gpt4 book ai didi

java - IntelliJ CE + Maven 包,无需 IDE

转载 作者:行者123 更新时间:2023-11-30 07:28:59 24 4
gpt4 key购买 nike

我尝试搜索“Build jar without IDE”但没有成功,如果有人有任何指示,我很乐意RTFM。

我已经大约 5 年没有接触过 Java,一切似乎都 有点 非常不同。

我有一个 IntelliJ Java 应用程序,标准 Java 应用程序,带有一些 Maven 依赖项。我可以转到“构建”>“构建 Artifact ”,它会为我生成一个 jar,我可以在其中通过 java -jar out.jar 运行应用程序。

IDE版本:IntelliJ Community Edition 2016.1

pom.xml的内容文件:

<?xml version="1.0" encoding="UTF-8"?>
<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>com.example</groupId>
<artifactId>app</artifactId>
<version>1.0-SNAPSHOT</version>

<dependencies>
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>1.17</version>
</dependency>
</dependencies>
</project>

但是,如何使用命令行构建此应用程序,就像在 IDE 中按“构建 Artifact ”一样?

最佳答案

构建 Artifact configured through the project structure settings存储在 IntelliJ 的项目文件中,并且不能通过命令行自动使用。要通过 Maven 构建 Artifact ,您应该手动将 IntelliJ Artifact 配置转换为 Maven Shade Plugin configuration that creates an executable jar 。假设您现有的 Artifact 配置仅包含项目中的所有内容,则如下所示:

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.example.MyMainClass</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>

将该代码段添加到 </project> 之前标签在你的 pom.xml ,然后运行mvn package在命令行上,Maven 将生成一个 app-1.0-SNAPSHOT.jar文件在您的 target可以使用 java -jar 运行的目录。如果您想从 IntelliJ 中生成相同的 Artifact ,可以通过访问 package 来实现。 Maven Projects Tool Window 的生命周期阶段.

关于java - IntelliJ CE + Maven 包,无需 IDE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36415843/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com