我有一个奇怪的问题。在我的 bash 脚本或 Makefile 中,使用绝对路径的 aapt 不起作用,但如果我在本地目录中,它会起作用。
如果我执行以下操作,它将不起作用:
aapt add $OUT/device.jar $OUT/classes.dex
该命令确实运行并打印此输出:
'/homes/rsevile/CS307/bin/Device/classes.dex'...
但是当尝试加载 jar 时,我尝试加载的类最终找不到。
以下确实有效:
cd $OUT
aapt add device.jar classes.dex
印刷:
'classes.dex'...
这是在脚本中执行的整个代码(有效):
javac -d $(OUT)/classes -classpath ./layoutlib.jar src/com/device/client/*.java
jar cf $(OUT)/device.jar $(OUT)/classes $(OUT)/layoutlib
dx --dex --no-strict --output=$OUT/classes.dex $OUT/device.jar
cd $OUT
aapt add device.jar classes.dex
cd $ROOT
adb push $OUT/device.jar $ANDROID_OUT_DIR
我很困惑为什么在使用 aapt 的绝对路径时找不到我的类。
谁能向我解释为什么它不起作用以及如何修复它以使用正确的绝对路径?
谢谢你。