教你代碼中獲取當前?JAR?包的存放位置
如何獲取當前 JAR 包的存放位置
提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔
前言
代碼中如何獲取打包后的jar包存放的位置?
要獲取當前運行的 JAR 包所存放的位置,可以使用 ProtectionDomain 和 CodeSource 類。
代碼:
import java.net.URL;
import java.security.CodeSource;
import java.security.ProtectionDomain;
public class Main {
public static void main(String[] args) {
// 獲取當前類的保護域
ProtectionDomain protectionDomain = Main.class.getProtectionDomain();
// 獲取代碼源
CodeSource codeSource = protectionDomain.getCodeSource();
// 獲取代碼源的位置
URL location = codeSource.getLocation();
// 獲取 JAR 包的路徑
String jarPath = location.getPath();
System.out.println("JAR Path: " + jarPath);
}
}注意:這種方法適用于獨立的可執(zhí)行 JAR 包。如果你的代碼是作為依賴項運行在其他項目或容器中,可能會得到不同的結果。在這種情況下,獲取 JAR 包位置的方法可能會有所不同。
如何找到jar包在本地倉庫的位置
第一種:怎么定位pom文件的某個依賴在本地倉庫的位置
鼠標選中此依賴,就會彈出一個彈框,彈框里的路徑就是此依賴在本地倉庫的位置.
即使不選中依賴彈出彈框,此依賴的groupid + artifactid+version 所對應的內容加起來就是此依賴所指向的本地倉庫的jar包的位置.

第二種:怎么定位右側maven窗口的某個依賴在本地倉庫的位置
可以看到,下面劃線的名稱就是在本地倉庫的路徑位置.

第三種:報錯org.apache.xmlgraphics.fonts.Glyphs這個路徑下的Glyphs類找不到
上面報錯的路徑并不是在本地maven倉庫的絕對路徑.而是此Glyphs類在自己的jar包中的類路徑,
怎么找呢,就是隨便找一個項目中的存在的類,然后 import org.apache.xmlgraphics.fonts.Glyphs;
導入這個類

然后ctrl + 左鍵, 找到這個類,然后點擊定位按鈕,就能看到這個類的所屬的jar包在本地倉庫的絕對路徑了.

其他的后面再補充.
到此這篇關于如何獲取當前 JAR 包的存放位置的文章就介紹到這了,更多相關JAR 包的存放位置內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
使用java自帶des加密算法實現(xiàn)文件加密和字符串加密
這篇文章主要介紹了使用java自帶des加密算法實現(xiàn)文件加密和字符串加密的示例,需要的朋友可以參考下2014-03-03
SpringBoot使用quartz,注入feignClient,client為null問題
在SpringBoot中使用Quartz和FeignClient時,如果通過@Autowired或構造方法注入FeignClient導致為null,可以使用Spring提供的通過文件名獲取bean的方式解決,這種方法在Quartz啟動時通過反射注入類,而類還未初始化好,導致FeignClient為null的問題2024-11-11
MyBatis學習教程(五)-實現(xiàn)關聯(lián)表查詢方法詳解
本文給大家介紹mybatis關聯(lián)查詢,包括一對一關聯(lián)查詢,一對多關聯(lián)查詢,代碼簡單易懂,感興趣的朋友一起學習吧2016-05-05
Mybatis中collection和association的使用區(qū)別詳解
這篇文章主要介紹了Mybatis中collection和association的使用區(qū)別詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11

