IntelliJ – 将Java项目/模块转换为Maven项目/模块

我有一个关于Bitbucket的项目。 只有来源承诺。 要将项目检索到新机器上,我使用了版本控制>从版本控制的IntelliJ内部检出。

然后问我是否想从这个来源创build一个新的项目,我回答是。 到现在为止还挺好。 它为我创build了一个很好的小型Java项目,由一个单一模块组成。

不过,我把这个项目拉进IntelliJ的目标是把它变成一个Maven项目。 我找不到任何可以让我这样做的选项!

有没有办法让IntelliJ只为我生成一个基本的空pom.xml,名称和artifactId和存储库? 或者,有没有办法将项目导入为Maven项目呢? (每当我尝试从现有的源创build一个项目,它只给了我一个Java项目的选项。)

右键单击模块,select“添加框架支持…”,并检查“Maven”技术。

(这也创build了一个pom.xml供你修改。)

如果你的意思是添加源代码库元素,我认为你需要手动做 – 不知道。

Pre-IntelliJ 13不会将项目转换为Maven标准目录布局 ,13+。

一个从中受益的视觉。

在这里输入图像描述

右键单击项目名称(在本例中为“test”),select“添加框架支持”并选中“Maven”选项。

  1. 打开“Maven项目”(右侧的标签)。
  2. 使用“添加Maven项目”
  3. find你的pom.xml

我想添加一个重要的提示,就是像这样转换一个项目会有副作用,当你有一个更大的项目时,这些副作用是显而易见的。 这是因为Intellij Idea(2017)仅从pom.xml中采取了一些重要的设置,这会导致一些混淆,下面的部分至less受到影响:

  1. 模块的注释设置已更改
  2. 编译器输出path为模块更改
  3. 资源设置完全被忽略,只能从pom.xml中获取
  4. 模块相关性混乱,必须检查
  5. 语言/编码设置已更改为模块

所有这些点需要审查和调整,但在此之后,它就像魅力。

更不幸的是没有足够的pom.xml模板创build,我添加了一个可能有助于解决大多数问题的例子。

 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>Name</groupId> <artifactId>Artifact</artifactId> <version>4.0</version> <properties> <!-- Generic properties --> <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> </properties> <dependencies> <!--All dependencies to put here, including module dependencies--> </dependencies> <build> <resources> <resource> <directory>${project.basedir}/src/main/java</directory> <excludes> <exclude>**/*.java</exclude> </excludes> </resource> <resource> <directory>${project.basedir}/src/main/resources</directory> <includes> <include>*</include> </includes> </resource> </resources> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.5.1</version> <configuration> <annotationProcessors/> <source>${java.version}</source> <target>${java.version}</target> </configuration> </plugin> </plugins> </build> 

这对我来说是固定的:在右侧打开maven项目选项卡。 添加pom(如果尚不存在),然后单击选项卡左上angular的刷新。