導出與導入:如果要用別的項目的類, 把對方類export出成jar包(多個類的集合),然后復制到自己項目路徑下然后添加至構建路徑,jar包右鍵buildpath/addtobuildpath。export導出javadoc文檔,index文件用瀏覽器打開。
1.控制台的可通過cmd命令:java -jar 包名.jar(需要進入到當前的jar包目錄)
2.建bat文件寫進代碼java -jar xxx.jar雙擊執行(同一路徑下)
@echo off
java -jar events.jar
pause
需要注意的是:如果提示沒有屬性清單和主類,我們只需要用壓縮軟件打開jar包,找到META-INF/MANIFEST.MF文件,然后在按照下面格式編寫就OK了。
Manifest-Version: 1.0
Main-Class: eventsDemo.eventText
但是當我們的jar包里有第三方的jar包引用就會報找不到Class異常,原因就是jar引用不到放在自己內部的jar包。
一,用Bootstrap Classloader來加載這些類
win32 java -Xbootclasspath/a: 第三方jar包名.jar;第三方jar包名.jar; -jar events.jar
unix java -Xbootclasspath/a: 第三方jar包名.jar:第三方jar包名.jar: -jar events.jar
win32系統每個jar用分號隔開,unix系統下用冒號隔開
方法二:在META-INF/MANIFEST.MF文件里加Class-Path: lib/第三方jar包名.jar, lib是和events.jar同目錄的一個子目錄,events.jar要引用的第三方包就在這里面。
如果有多個jar包需要引用的情況:
Class-Path: lib/第三方jar包名.jar lib/第三方jar包名.jar
每個單獨的jar用空格隔開就可以了。注意使用相對路徑。
另:如果META-INF 下包含INDEX.LIST文件的話,可能會使Class-Path配置失效。INDEX.LIST是Jar打包工具打包時生成的索引文件,刪除對運行不產生影響。
java -Xmx1G -classpath .;lib\kutil.jar;lib\a.jar;lib\b.jar test.AAA --xxx=.
在當前目錄下和lib目錄下找到test包下的AAA類並執行 --xxx=. 為參數, 按照順序找,執行第一個找到的類。-classpath會覆蓋CLASSPATH環境變量的值。https://www.jianshu.com/p/87637b150026
https://www.iteye.com/blog/notafraid-2239958
可執行的jar包就是可以用java -jar xx.jar 執行的jar包。 不可執行的就是嵌入到其他項目的jar包。
原文鏈接:https://blog.csdn.net/weixin_39407066/article/details/83625316