我正在做一些hotcoding的事情,我需要在这个过程中使用android.jar。但是我必须手动将 android.jar 添加到 javassist (字节码操作工具)类池中,但我不想使用 android.jar <的绝对路径/ em>像现在一样,
pool.insertClassPath("/Users/xinmei/Library/Android/sdk/platforms/android-
26/android.jar")
但我不知道如何获得它的相对路径,任何人都可以给我一些提示吗?谢谢!
答案 0 :(得分:0)
这是我从我的一个项目中复制使用的方法:
public static String getPathName() {
String fullPath = "";
int endOfPath = 0;
try {
fullPath = new File(JOTI_App.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath()).toString();
endOfPath = fullPath.lastIndexOf(File.separatorChar);
} catch (URISyntaxException ex) {
Logger.getLogger(Utils.class.getName()).log(Level.SEVERE, null, ex);
}
return fullPath.substring(0, endOfPath);
}