gpt4 book ai didi

java - 如何制作我的 Maven 项目的可运行 jar?

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

我想为我的项目制作一个 jar 文件,但是当我尝试制作 jar 时它显示错误。

到目前为止,我构建了一个使用命令执行的jar,

java -cp <JAR FILE> <MAIN CLASS NAME> .

我已经通过在 POM 中添加插件来做到这一点,

<plugin> 
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>

并通过运行命令,mvn cleanmvn install assembly:assembly .

但我想要一个 jar ,它将通过使用命令 java -jar <JAR FILE> 运行

为此,我阅读了 this link并实现也。但它显示以下错误,

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-jar-plugin:2.4:jar (default-jar) on project ThreadPool: Unable to parse configuration of mojo org.apache.maven.plugins:maven-jar-plugin:2.4:jar for parameter manifest: Cannot find setter, adder nor field in org.apache.maven.archiver.ManifestConfiguration for 'addClassPath' -> [Help 1] 

请帮我制作 jar 文件,使用 java -jar 执行命令。提前致谢 。期待您的友好回应。

编辑 1

我添加了以下插件,POM 中的依赖,

<!-- Example dependency -->
<dependencies>
    <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>2.1</version>
    </dependency>
</dependencies>
...
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <configuration>
                <archive>
                    <manifest>
                        <addClasspath>true</addClasspath>
                    </manifest>
                </archive>
            </configuration> 
        </plugin>
    </plugins>
</build>

最佳答案

试试这个

<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>your.fully.qualified.MainClass</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>

这将添加

Main-Class: your.fully.qualified.MainClass 

jars 的 META-INF/MANIFEST.MF header 并使其可运行

你可以在一行中运行 maven build

mvn clean package assembly:single

关于java - 如何制作我的 Maven 项目的可运行 jar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16514764/

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