IDEA打jar包(带外部依赖)
程序员文章站
2024-02-02 10:31:22
...
工作中做了发送钉钉消息的功能,脚本中使用了钉钉的相关api,打jar包时,就需要带上这个外部依赖。
使用的框架:springboot
网上有很多maven 打包时,加入外部依赖的配置,但结果五花八门,看的人眼花,就使用了最原始的方法。
1、
下载了外部依赖,放入项目中
2、
pom.xml中只需要加入依赖,不需要build目录
<dependencies>
<!--钉钉工具包,如缺失请到钉钉服务器开发文档下载-->
<dependency>
<groupId>com.taobao.top</groupId>
<artifactId>top-api-sdk-dev</artifactId>
<version>ding-open-mc-SNAPSHOT</version>
<scope>system</scope>
<systemPath>${pom.basedir}/src/lib/taobao-sdk-java-auto_1479188381469-20190905.jar</systemPath>
</dependency>
<dependency>
<!-- jsoup HTML parser library @ http://jsoup.org/ -->
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.10.2</version>
</dependency>
</dependencies>
3、打开 Project Structure
4、Main Class选上项目 main方法所在的class
点ok即可。关注一下这里的箭头内容
5、
然后选build,就会在out/artifacts/ 目录下找到jar包
6、
java -jar ***.jar 报错:没有主属性清单。
查看jar包中的,MANIFEST.MF 文件确实是没有 Main-Class 的值。
解决方法:
第4步中,箭头所指内容做了更改。
原本的 D:\Projects\dingdingforpython-oms\src\main\java\META-INF\MANIFEST.MF
更改为 D:\Projects\dingdingforpython-oms\src\main\java\com\suise\dingdingdemo\META-INF\MANIFEST.MF
就是要到带有main 方法的class的上一层,才可以。
报错不在,运行正常。