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}。 
缺點:代碼比較長 
優點:不會修改資源文件夾,項目結構不用改變,推薦使用這一種

參考資源


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM