前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Maven IntelliJ

Maven IntelliJ

原创
作者头像
陈不成i
修改于 2021-07-15 06:25:51
修改于 2021-07-15 06:25:51
68100
代码可运行
举报
文章被收录于专栏:ops技术分享ops技术分享
运行总次数:0
代码可运行

IntelliJ IDEA 已经内建了对 Maven 的支持。我们在此例中使用的是 IntelliJ IDEA 社区版 11.1。

IntelliJ IDEA 的一些特性列出如下:

  • 可以通过 IntelliJ IDEA 来运行 Maven 目标。
  • 可以在 IntelliJ IDEA 自己的终端里查看 Maven 命令的输出结果。
  • 可以在 IDE 里更新 Maven 的依赖关系。
  • 可以在 IntelliJ IDEA 中启动 Maven 的构建。
  • IntelliJ IDEA 基于 Maven 的 pom.xml 来实现自动化管理依赖关系。
  • IntelliJ IDEA 可以通过自己的工作区解决 Maven 的依赖问题,而无需安装到本地的 Maven 仓库,虽然需要依赖的项目在同一个工作区。
  • IntelliJ IDEA 可以自动从远程 Maven 仓库上下载需要的依赖和源码。
  • IntelliJ IDEA 提供了创建 Maven 项目,pom.xml 文件的向导。

在 IntelliJ IDEA 里创建一个新的项目

使用新建项目向导来导入一个 Maven 项目。

  • 打开 IntelliJ IDEA。
  • 选择 File Menu > New Project 选项。
  • 选择 import project from existing model 选项。
  • 选择 Maven 选项。
  • 选择项目路径,即使用 Maven 创建一个项目时的存储路径。 假设我们创建了一个项目 consumerBanking。 通过 Maven 构建 Java 项目 查看如何使用 Maven 创建一个项目。
  • 选择要导入的 Maven 项目。
  • 输入项目名称,点击 "finish"。

现在,我们可以在 IntelliJ IDEA 里看到 Maven 项目了。看一下 consumerBanking 项目的 Libraries 和 Test Libraries,你可以发现 IntelliJ IDEA 已经将 Maven 所依赖的都添加到了它的构建路径里了。

在 IntelliJ IDEA 里构建一个 Maven 项目

好了,接下来我们来使用 IntelliJ IDEA 的编译功能来构建这个 Maven 项目 。

  • 选中 consumerBanking 项目。
  • 选择 Buid menu > Rebuild Project 选项。

你可以在 IntelliJ IDEA 的终端里看到构建过程输出的log:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
4:01:56 PM Compilation completed successfully

在 IntelliJ IDEA 里运行应用程序

  • 选中 consumerBanking 项目。
  • 右键点击 App.java 弹出上下文菜单。
  • 选择 Run App.main() 。

你将会在 IntelliJ IDEA 的终端下看到如下运行结果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"C:\Program Files\Java\jdk1.6.0_21\bin\java"
-Didea.launcher.port=7533 
"-Didea.launcher.bin.path=
C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 11.1.2\bin"
-Dfile.encoding=UTF-8 
-classpath "C:\Program Files\Java\jdk1.6.0_21\jre\lib\charsets.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\deploy.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\javaws.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\jce.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\jsse.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\management-agent.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\plugin.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\resources.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\rt.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\ext\dnsns.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\ext\localedata.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\ext\sunjce_provider.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\ext\sunmscapi.jar;
C:\Program Files\Java\jdk1.6.0_21\jre\lib\ext\sunpkcs11.jar
C:\MVN\consumerBanking\target\classes;
C:\Program Files\JetBrains\
IntelliJ IDEA Community Edition 11.1.2\lib\idea_rt.jar" 
com.intellij.rt.execution.application.AppMain com.companyname.bank.App
Hello World!
Process finished with exit code 0

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
蓝桥杯试题算法学习笔记一题目
题目 1、熊怪吃核桃 森林里有一只熊怪,很爱吃核桃。不过它有个习惯,每次都把找到的核桃分成相等的两份,吃掉一份,留一份。如果不能等分,熊怪就会扔掉一个核桃再分。第二天再继续这个过程,直到最后剩一个核桃了,直接丢掉。 有一天,熊怪发现了1543个核桃,请问,它在吃这些核桃的过程中,一共要丢掉多少个核桃。 请填写该数字(一个整数),不要填写任何多余的内容或说明文字。 /** * Created by junyi.pc on 2017/1/25. */ public class Main { pu
张俊怡
2018/04/24
9300
java循环队列实现相关方法
循环队列相关背景### 什么是队列就不解释了 头尾相接的顺序存储结构称为循环队列(circular queue)。 循环队列中需要注意的几个重要问题: ①队空的判定条件,队空的条件是front=rear; ②队满的判定条件,(rear+1)%QueueSize=front。QueueSize为队列初始空间大小。 import com.sun.corba.se.impl.orbutil.graph.Node; import com.sun.corba.se.spi.presentation.rmi.IDLN
张俊怡
2018/04/24
6500
JVM调优指南-工具篇:jps
大家好!我是老码农,一个喜欢技术、爱分享的同学,从今天开始和大家持续分享JVM调优方面的经验。
小码匠
2022/06/16
3190
用Java实现JVM第六章《类和对象》
本案例通过java代码实现jvm规范中指令集和解释器,完成后就可以开始执行1到100的加和计算。
小傅哥
2020/01/19
3950
用Java实现JVM第六章《类和对象》
用Java实现JVM第五章《指令集和解释器》
本案例通过java代码实现jvm规范中指令集和解释器,完成后就可以开始执行1到100的加和计算。
小傅哥
2020/01/19
6192
用Java实现JVM第五章《指令集和解释器》
java实现多种排序算法
冒泡排序 /** * Created by junyi.pc on 2017/1/25. */ import java.util.Calendar; import java.util.Scanner; import java.util.Vector; public class Main { public static void main(String[] args){ int a[]={1,4,5,2,8,4,0,3}; int len=a.length;
张俊怡
2018/04/24
6620
java用内部类构造链表实现相关方法
代码 import com.sun.corba.se.impl.orbutil.graph.Node; /** * Created by junyi.pc on 2017/1/25. */ public class Main { Node head=null; Node tail=null; class Node { //内部类 int data; Node next; public Node(int data) {
张俊怡
2018/04/24
5290
JVM 分析工具概述
详情请参考:https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jps.html
芋道源码
2018/12/24
6510
JVM 分析工具概述
Java基础之打印输出九九乘法表
public class MultiplicationTable { public static void main(String[] args) { for(int i=1;i<=9;i++){// 循环控制变量从1遍历到9 for(int j=1;j<=i;j++){// 第二层循环控制变量与第一层最大索引相等 // 输出计算结果但不换行 System.out.print(j+"*"+i+"=
葆宁
2019/04/19
5620
IntelliJ IDEA 第一个 Scala 程序
IntelliJ 安装完成 Scala 插件后,你需要尝试使用 IntelliJ 来创建并且运行第一个程序。
HoneyMoose
2019/01/21
1K0
IntelliJ IDEA 第一个 Scala 程序
从JDK源码级别彻底刨析JVM类加载机制
“ 当我们用java命令运行某个类的main函数启动程序时,大家有没有想过是怎样加载的,本文将带着大家一起探讨JVM类的加载机制”
会呼吸的Coder
2022/06/13
2770
从JDK源码级别彻底刨析JVM类加载机制
IDEA上使用Kotlin插件出现的几个小问题
2017-07-04 by Liuqingwen | Tags: Kotlin | Hits
IT自学不成才
2019/01/07
27.2K0
ClassLoader工作机制
classLoader顾名思义就是类加载器。 负责将类加载到JVM中,它就好比开会时门口的接待员,负责给进入会场的嘉宾发放入证明,入会的嘉宾分为VIP会员,黄金会员,白金会员,和普通会员等。都赢的接待室也会分为VIP会员接待室,黄金会员接待室,白金会员接待室和普通会员接待室,不同等级的会员会被分到不同的接待室接待,所有的会员都想进入会场得有入会证明才行,一旦会员进入会场就会根据接待室的等级表示它们,也就是会员的身份由接待室决定。如果你是一位大佬但是你不是VIP接待室接待的,那么对不起,你仍然不是VIP会员。当然对你是不是VIP会有会有严格的审查规定,如果你是也不会冤枉你,但是如果你想还能进来那就另当别论了。 事实上,ClassLoader除了能将Class加载到JVM中之外,还有一个重要的作用就是审查每个类应该由谁加载,它是一种父优先的等级加载机制。ClassLoader除了上述两个作用外还有一个任务就是将Class字节码重新解析成JVM统一要求的对象格式。 所以,
MickyInvQ
2020/09/27
4150
ClassLoader工作机制
No suitable driver found for jdbc:mysql://localhost:3306/BookManagement
“"C:\Program Files\Java\jdk1.8.0_221\bin\java.exe" "-javaagent:D:\IDEA2020_1\IntelliJ IDEA 2020.1\lib\idea_rt.jar=51910:D:\IDEA2020_1\IntelliJ IDEA 2020.1\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_221\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\rt.jar;D:\桌面\图书管理系统\out\production\图书管理系统" BookManagement java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/BookManagement at java.sql.DriverManager.getConnection(DriverManager.java:689) at java.sql.DriverManager.getConnection(DriverManager.java:247) at BookManagement.<init>(BookManagement.java:18) at BookManagement.main(BookManagement.java:56)”
命运之光
2024/03/20
4240
【多线程】之线程通讯wait和notify的使用
1、定义 等待/通知机制,是指一个线程A调用了对象object的wait()方法进入等待状态,而另一个线程B调用了对象object的notify或者notifyAll()方法,线程A收到通知后从对象O的wait()方法返回,进而还行后续操作。 使用wait和notify方法实现线程之间的通信,这两个方法是Object类的方法。 注意细节: 1.1 调用wait()方法,会释放锁,线程状态由RUNNING->WAITNG,当前线程进入对象等待; 1.2 调用notify()/notifyAll()方法不会立马释放锁,notify()方法是将等待队列中的线程移到同步队列中,而notifyAll()则是全部移到同步队列中, 被移出的线程状态WAITING-->BLOCKED; 重点注意,等待队列和同步队列的转换;wait()后进入等待队列;notify()/notifyAll(),线程进入同步队列; 1.3 当前调用notify()/notifyAll()的线程释放锁了才算释放锁,才有机会唤醒wait线程; 1.4 从wait()返回的前提是必须获得调用对象锁,也就是说notify()与notifyAll()释放锁之后,wait()进入BLOCKED状态,如果其他线程 有竞争当前锁的话,wait线程继续争取锁资格。可以理解为,从同步队列中的线程抢占锁执行; 1.5 使用wait()、notify()、notifyAll()方法时需要先调对象加锁。这就是跟synchronized关键字配置使用; 2、代码运行过程
用户5640963
2021/06/09
3950
JVM-白话聊一聊JVM类加载和双亲委派机制源码解析
其中最核心的方法 loadClass ,其实现我们常说的双亲委派机制 ,我们后面展开。
小小工匠
2021/08/17
2770
JVM内存与垃圾回收篇第11章直接内存
第 11 章 直接内存 1、直接内存概述 直接内存 不是虚拟机运行时数据区的一部分,也不是《Java虚拟机规范》中定义的内存区域。 直接内存是在Java堆外的、直接向系统申请的内存区间。 来源于NIO,通过存在堆中的DirectByteBuffer操作Native内存 通常,访问直接内存的速度会优于Java堆。即读写性能高。 因此出于性能考虑,读写频繁的场合可能会考虑使用直接内存。 Java的NIO库允许Java程序使用直接内存,用于数据缓冲区 代码示例 代码 /** * IO
yuanshuai
2022/08/17
4960
JVM内存与垃圾回收篇第11章直接内存
JDK1.6环境变量
以下过程为配置JDK环境变量:   1.右击“我的电脑”,点击“属性”:选择“高级”选项卡,点击“环境变量”:   2.在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(不分大小写) JAVA_HOME指明JDK安装路径,就是刚才安装时的路径C:/Program Files/Java/jdk1.6.0_21,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依*此变量);
大数据工程师-公子
2019/03/14
8180
java -jar 启动程序/设置classpath
使用-jar选项(形如:java -jar xxx.jar )来运行一个可执行的jar包时,-jar会覆-cp的值。
全栈程序员站长
2022/09/05
3.1K0
CKafka系列学习文章 - 云上消息队列它香不香?(十七)
一、先买买买,一个 1、供上购买链接:https://buy.cloud.tencent.com/ckafka?rid=1 2、先创建一个Ckafka实例 image.png image.png im
发哥说消息队列
2020/06/15
1.5K0
相关推荐
蓝桥杯试题算法学习笔记一题目
更多 >
LV.5
这个人很懒,什么都没有留下~
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文