为了账号安全,请及时绑定邮箱和手机立即绑定

如何将 Maven 项目部署为 jar 文件

如何将 Maven 项目部署为 jar 文件

慕标琳琳 2021-10-06 12:58:12
我已经阅读了很多关于“构建” pom.xml 文件的内容,我在清理项目后多次完成了该文件。我在设置目标时已经打包并编译并尝试安装。它创建了一个“快照”jar 文件,但是当我尝试执行它时没有任何反应。我尝试在命令行 (CMD) 上执行它以查看错误并收到以下信息:没有主要清单属性,在 smart.mirror-0.0.1-SNAPSHOT.jar任何帮助,将不胜感激。
查看完整描述

2 回答

?
FFIVE

TA贡献1797条经验 获得超6个赞

您确实需要使用 maven jar 插件并定义主类。


 <plugin> 

     <groupId>org.apache.maven.plugins</groupId>

     <artifactId>maven-jar-plugin</artifactId>

     <configuration>

          <archive>

              <manifest>

                  <mainClass>

                     com.yourpackage.YourMainClass

                  </mainClass>

              </manifest>

          </archive>

     </configuration>

</plugin>

通常,您确实有依赖项,如有必要,您可以使用 Shade 插件将其打包到您自己的 jar 中。


查看完整回答
反对 回复 2021-10-06
?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

基本上,您需要将依赖项添加到您的 pom 中,而不是重建它。请将此依赖项添加到您的 pom 中:


<dependency>

    <groupId>com.mashape.unirest</groupId>

    <artifactId>unirest-java</artifactId>

    <version>1.4.9</version>

</dependency>

之后,右键单击该项目并选择 maven 并清理它。清洁后,按照相同的步骤并选择构建。它将构建可执行的 jar。


您必须使用 Maven Assembly Plugin 而不是 Jar 来部署具有可执行 Jar 的依赖项。它在你的 pom 中丢失了。它应该类似于下面提到的插件配置:


<plugin>

  <artifactId>maven-assembly-plugin</artifactId>

  <configuration>

    <archive>

      <manifest>

        <mainClass>fully.qualified.MainClass</mainClass>

      </manifest>

    </archive>

    <descriptorRefs>

      <descriptorRef>jar-with-dependencies</descriptorRef>

    </descriptorRefs>

  </configuration>

</plugin>


查看完整回答
反对 回复 2021-10-06
  • 2 回答
  • 0 关注
  • 135 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信