java - Maven:运行创建的带有依赖项的 Jar 文件

标签 java maven

我编写了一个小型 Java 命令行工具,我想通过它来运行(例如)

java -jar myJarFile.jar de.my.path.MainClass arg0 arg1 arg2

为了构建 jar 文件并管理依赖关系,我使用 Maven。现在我发现,Maven 不包含 Jar 文件中 POM 文件的依赖关系。因此,当我运行我的 jar 文件时,我得到 ClassNotFoundExceptions..但是要执行我的 jar 文件,我需要类路径中的这些库。

我如何使用 Maven 来管理它?

感谢您的帮助!!

最佳答案

将此 Maven 程序集插件放入您的 pom.xml 中:

    <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>single</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
                <archive>
                    <manifest>
                        <addClasspath>true</addClasspath>
                        <mainClass>de.my.path.MainClass</mainClass>
                    </manifest>
                </archive>
            </configuration>
        </plugin>

关于java - Maven:运行创建的带有依赖项的 Jar 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27503047/

相关文章:

java - 从 SCM checkout Maven 项目 : disconnect and merge

java - 手动下载和安装maven插件

java - 有没有办法用唯一的配置文件编译类并以其他方式排除它?

java - 具有 java XSLT 扩展的数组

java - 类对象的泛型

java - 最简单的java多人网络游戏是什么?

java - 具有图层问题的 PrimeFaces 菜单

java - java swing对象之间的细微差别

java - 安装程序未找到 Maven 依赖项,但它位于本地存储库中

maven - 不同目录中的 XSD 和 WSDL