maven如何实现创建带源代码的jar包
实现目标
maven打包,在生成的jar包中带有源代码。记住,这个带源代码的意思是源代码跟编译生成的文件放在一个jar文件里面,而不是单独的一个XXX-source.jar包。
实现思想
把源代码当作资源文件
实现方法一
<build><resources><resource> <directory>src/main/java</directory> </resource> </resources> </build>
说明:默认的资源文件夹是src/main/resource,此方法修改了资源文件夹,让你默认的资源文件夹变成了src/main/java文件夹。而这个文件夹在maven中是默认放置源代码的。
缺点:修改之后,src/main/resource文件夹就不是资源文件夹了,放在里面的文件将不会被当作资源。
实现方法二
<plugin><groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>2.3</version> <executions> <execution> <id>copy-resources</id> <phase>process-resources</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.build.outputDirectory}</outputDirectory> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.java</include> </includes> </resource> </resources> </configuration> </execution> </executions> </plugin>
说明:插件maven-resources-plugin默认处理资源和测试资源,把资源加入到文件夹${project.build.outputDirectory}
,这个引用表示项目的输出文件夹。一般是项目的WEB-INF\classes
文件夹。等到打包的时候,就把这个文件夹里面的内容打包成jar文件。所以想要把源代码打包到jar文件里面,就需要把源代码当作资源文件添加到文件夹${project.build.outputDirectory}
。
缺点:代码比较长
优点:不会修改资源文件夹,项目结构不用改变,推荐使用这一种
参考资源
- http://stackoverflow.com/questions/25779900/how-to-include-source-file-java-file-parallel-to-class-file-in-the-generated
- http://stackoverflow.com/questions/23933911/include-source-code-while-exporting-a-jar-using-maven
转载于:https://www.cnblogs.com/telwanggs/p/7728040.html
maven如何实现创建带源代码的jar包相关推荐
- 创建jira plugin插件、创建jira实例生成jar包总结
创建jira plugin插件.创建jira实例生成jar包总结 创建插件骨架: 在本地安装完Atlassian SDK后,需注意将环境变量里的maven路径更改为sdk里自带的maven仓库路径. ...
- Maven公共中央仓库发布自己的Jar包
Maven公共中央仓库发布自己的Jar包 流程概要 创建工单 配置环境和项目 发布jar包 一.创建工单 1. 注册账号 https://issues.sonatype.org/secure/Sign ...
- Maven Nexus搭建本地私服 上传jar包或本地项目到私服
Nexus就是Maven的私服 在日常开发中我们在使用maven时经常会遇到下面的问题 1.一些无法从外部仓库下载的构件,例如内部的项目部署到私服上,以便供其他依赖项目使用. 2. 为了节省带宽和时间 ...
- 使用Maven构建Dubbo服务的可运行jar包
本文为<基于Dubbo的分布式系统架构视频教程>的课程系列文档,更多课程信息,请关注:http://www.roncoo.com Dubbo视频教程--基础篇--第07节--使用Maven ...
- 如何根据jar包的名称找到包含对应源代码的jar包
我们经常在trouble shooting时,需要进入依赖的java库文件的源代码内进行调试,如下图所示,Eclipse提示需要指定包含了源代码的jar包:C:/temp/httpclient-4.5 ...
- 【Maven】无法下载私服 SNAPSHOT 版本 jar 包
插件开发的时候,做ci的时候,发现依赖包没成功下载. 确认仓库有这个包,但是就是运行显示jar包文件不存在.排查过程中,遇到有些是这个情况,虽然我最后不是这个原因(而是pom文件少写了(๐॔˃̶ᗜ˂̶ ...
- maven依赖本地非repository中的jar包-依赖jar包放在WEB-INF/lib等目录下的情况客户端编译出错的处理...
2019独角兽企业重金招聘Python工程师标准>>> maven依赖本地非repository中的jar包 http://www.cnblogs.com/piaolingxue/a ...
- java源代码转jar包
引入 jar文件具有跨平台.数据压缩.多文件封装的优点,所以我们常将java源程序和其他的文件(比如资源文件.签名)打包到一起,变成jar包.这样对java程序的部署会更方便,也更安全. 用IDEA等 ...
- Maven无法正常通过快照Snapshots下载jar包问题
导读: 首先在一般大公司的项目中,不推荐使用快照Snapshots去下载jar包,我的理解是因为在Snapshots上发布的jar包版本可能仅仅更多是测试用(可能后续会出现bug呀等等防止这些问题的发 ...
最新文章
- 使用ADO.NET 的最佳实践(zz)
- WPF最大化避免覆盖任务栏
- CUBA在查询语句如何添加参数
- Amazon S3数据存储
- boost::hana::second用法的测试程序
- 文献记录(part35)--Mixed pooling and richer attention feature fusion for crack detection
- 【Floyed】工厂的烦恼(ssl 1762)
- 【C++ 与 STL】不定长数组:vector
- ARCGIS中生成KML文件
- 老李分享:浏览器引擎的介绍
- 基于RDP瘦客户机协议的简要说明
- 操作高通QXDM5,点击重置按钮出现报错
- Matlab:风向玫瑰图,我也行
- 一些iOS面试题答案
- 利用MS模拟天然气(甲烷)在多孔介质中的吸附
- 这一次,抄袭的人竟然是Facebook!美版微信要出现了吗?!
- java支付宝rsa2签名,使用支付宝SDK进行RSAj加签验签以及加密解密
- GDB调试器——GDB调试器简介
- Java的三大版本和JDK,JRE,JVM的概念
- 微信点击短链接直接跳转到支付宝领红包教程 附带例子