用gradle打包可運行jar


參考了

http://www.cnblogs.com/yongtao/p/4104526.html

gradle文件加入

apply plugin: 'application'
mainClassName = 'com.xxx.Xxx'
//打包 task runnbaleJar(type: Jar) { from files(sourceSets.main.output.classesDir) from configurations.runtime.asFileTree.files.collect { zipTree(it) } manifest { attributes 'Main-Class':'com.Sayer' } }


作者:bsqql123
鏈接:https://www.jianshu.com/p/4d5c82d80041
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
 
        
//打包 task runnbaleJar(type: Jar) { from files(sourceSets.main.output.classesDir) from configurations.runtime.asFileTree.files.collect { zipTree(it) } manifest { attributes 'Main-Class':'com.Sayer' } }//打包 task runnbaleJar(type: Jar) { from files(sourceSets.main.output.classesDir) from configurations.runtime.asFileTree.files.collect { zipTree(it) } manifest { attributes 'Main-Class':'com.Sayer' } }


作者:bsqql123
鏈接:https://www.jianshu.com/p/4d5c82d80041
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
task runnbaleJar(type: Jar) { 
from files(sourceSets.main.output.classesDir)
from configurations.runtime.asFileTree.files.collect { zipTree(it) }
manifest { attributes 'Main-Class':'com.xxx.Xxx' }

   exclude('LICENSE.txt', 'NOTICE.txt', 'rootdoc.txt')  

   exclude 'META-INF/*.RSA', 'META-INF/*.SF', 'META-INF/*.DSA'  

   exclude 'META-INF/NOTICE', 'META-INF/NOTICE.txt'  

   exclude 'META-INF/LICENSE', 'META-INF/LICENSE.txt'  

   exclude 'META-INF/DEPENDENCIES' 


}

exclude 這些必須加上,不然打包出來的jar 無法運行,會報invalid signature file degist for manifest
在另外一篇用maven打包的也提及過此問題 https://www.cnblogs.com/fuxinci/p/3356087.html


免責聲明!

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



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