我有一个关于 Bitbucket 的项目。只有源被提交。为了将项目检索到新机器上,我在 IntelliJ 中使用了 Version Control > Checkout from Version Control。
然后它询问我是否想从此源创建一个新项目,我回答是。到目前为止,一切都很好。它为我创建了一个不错的 Java 小项目,由一个模块组成。
然而,我将这个项目引入 IntelliJ 的目标是将它变成一个 Maven 项目。我在任何地方都找不到任何可以让我这样做的选项!
有没有办法让 IntelliJ 为我生成一个基本的空 pom.xml,带有名称、artifactId 和存储库?或者,有没有办法首先将项目作为 Maven 项目导入? (每当我尝试从现有源创建项目时,它只会让我选择 Java 项目。)
右击模块,选择“添加框架支持...”,勾选“Maven”技术。
https://i.stack.imgur.com/sC2ix.png
https://i.stack.imgur.com/RK3xx.png
(这也会创建一个 pom.xml
供您修改。)
如果您的意思是添加源存储库元素,我认为您需要手动执行此操作——不确定。
Pre-IntelliJ 13 这不会将项目转换为 Maven Standard Directory Layout,13+ 它会。
为那些从中受益的人提供视觉效果。
https://i.stack.imgur.com/3GCAR.png
右键单击项目名称(本例中为“test”)后,选择“添加框架支持”并选中“Maven”选项。
打开“Maven 项目”(右侧的选项卡)。使用“添加 Maven 项目”找到你的 pom.xml
只需按照以下步骤操作:
右键单击任何模块 pox.xml,然后选择“添加为 Maven 项目”
https://i.stack.imgur.com/PMMmb.png
接下来要对其进行更改,转到 maven 选项卡,您将看到具有所有可以使用的 maven 目标的项目:
https://i.stack.imgur.com/MrjeF.png
我想添加一个重要提示,即转换这样的项目可能会产生副作用,当你有一个更大的项目时,这些副作用会很明显。这是因为 Intellij Idea (2017) 仅从 pom.xml 中获取一些重要设置,这可能会导致一些混乱,至少以下部分受到影响:
模块的注释设置已更改 模块的编译器输出路径已更改 资源设置被完全忽略,仅取自 pom.xml 模块依赖关系混乱,必须检查模块的语言/编码设置已更改
所有这些点都需要审查和调整,但在此之后它就像魅力一样。
更不幸的是,没有创建足够的 pom.xml 模板,我添加了一个可能有助于解决大多数问题的示例。
<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>
<directory>${project.basedir}/target</directory>
<outputDirectory>${project.build.directory}/classes</outputDirectory>
<testOutputDirectory>${project.build.directory}/test-classes</testOutputDirectory>
<sourceDirectory>${project.basedir}/src/main/java</sourceDirectory>
<testSourceDirectory> ${project.basedir}/src/test/java</testSourceDirectory>
<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>
2019年编辑:
添加了递归资源扫描
添加了目录规范,这对于避免 IDEA 记录内容根结构的混淆可能很重要
我有一个不同的场景,但仍然得到了这个答案。我已经导入了我的根项目文件夹,其中包含多个 Maven 项目以及该项目中使用的一些其他内容。 IntelliJ 识别了 Java 文件,但没有解析 Maven 依赖项。
我通过右键单击每个 pom 然后“添加为 maven 项目”来解决此问题
我通过执行以下步骤解决了同样的问题:
文件>关闭项目导入项目通过系统文件弹出选择你的项目检查“从外部模型导入项目”单选按钮并选择Maven条目和一些下一步按钮(选择JDK,...)
然后项目将作为 Maven 模块导入。
这为我解决了这个问题:打开右侧的 Maven 项目选项卡。添加 pom(如果尚未出现),然后单击选项卡左上角的刷新。
最简单的方法是直接将项目添加为 Maven 项目。为此,在左侧的项目资源管理器中,右键单击项目的 POM 文件,在上下文菜单的底部,您将看到一个名为“添加为 Maven 项目”的选项,单击它。这将自动将项目转换为 Maven 项目
Intellij IDEA 2020.2.3 版本更新
Settings -> Build,Execution,Deployment -> Build Tools -> Maven -> Importing
并点击“为多模块 Maven 项目创建模块组”。
然后应用,您可以在“添加框架支持...”中看到该选项
https://i.stack.imgur.com/4ye4x.png
右键单击模块选择“添加框架支持”单击“Maven”选项。
注意:这会将当前项目转换为 maven 驱动的项目,并自动创建 pom.xml 文件。然后可以添加依赖项。
启用依赖项的自动导入
(Ubuntu
上的InteliJ IDEA 14.1.1
)
Settings > Build, Execution, Deployment > Build Tools > Maven > Importing > [X] Import Maven projects automatically
作为 maven 项目运行
创建 maven 类型的新运行/调试配置并添加命令 clean install
最后单击绿色按钮运行该运行/调试配置,这将使用 apache maven
运行构建项目。