Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用ant发布android软件包时发生编译错误_Java_Android_Ant - Fatal编程技术网

Java 使用ant发布android软件包时发生编译错误

Java 使用ant发布android软件包时发生编译错误,java,android,ant,Java,Android,Ant,我的Android项目有两个外部库:A和B。使用Ant命令行编译Android项目时,我遇到了以下错误。库A的路径是D:\Workspace\Library 我在Project.properties文件中将项目A标记为库,该文件是来自的指令。然而,它仍然不起作用。显然,编译并不将项目A视为库,而是需要classes.dex文件 还有什么建议吗 错误: 这个错误的根本原因是这两个lib项目没有被视为一个库,尽管它们在project.properties中被清楚地标注为android.library

我的Android项目有两个外部库:A和B。使用Ant命令行编译Android项目时,我遇到了以下错误。库A的路径是D:\Workspace\Library

我在Project.properties文件中将项目A标记为库,该文件是来自的指令。然而,它仍然不起作用。显然,编译并不将项目A视为库,而是需要classes.dex文件

还有什么建议吗

错误:


这个错误的根本原因是这两个lib项目没有被视为一个库,尽管它们在project.properties中被清楚地标注为android.library=true。我在这里很困惑,但我确信我已经尽了一切努力将其标记为lib。对于Ant的编译机制,它将根据jar文件是否为库,使其具有不同的名称但具有相同的内容

对于非库项目,它将是${project_name}.jar 对于库项目,它将是classes.jar
在编译主项目时,Ant需要classes.jar作为其依赖项的输入,以生成最终包。所以这个过程在这里停止了。我不得不使用一个愚蠢的解决方案来修复它:在lib项目发布后,我将${project_name}.jar重命名为classes.jar,并解决了这个问题

你在应用程序中有jar库吗??我坚信问题在于ur appYes中包含的jar库。在主项目或lib项目中,都有几个jar库。有没有解决这个问题的办法?或者有任何关于这个问题的线索?非常感谢。好的,检查jar是否有任何重复,并告诉我如何添加文件项目a是一个混合结构:libs文件夹下有两个jar,它自己的项目需要与主项目连接。一个jar是系统自动导入的android-support-v4.jar,用于支持较低版本,另一个是手动导入的gson-2.2.4.jar,用于更好地pares JSON。您是否将fist复制到libs并添加?有复制品吗??有没有办法检查一下这个
[dex] Converting compiled files and external libraries into d:\apk\compile\classes.dex...
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] java.io.FileNotFoundException: D:\Workspace\library\bin\classes.jar (系统找不到指定的文件。)
       [dx]     at java.util.zip.ZipFile.open(Native Method)
       [dx]     at java.util.zip.ZipFile.<init>(Unknown Source)
       [dx]     at java.util.zip.ZipFile.<init>(Unknown Source)
       [dx]     at java.util.zip.ZipFile.<init>(Unknown Source)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:244)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] java.io.FileNotFoundException: D:\Workspace\YimianBaseLib\bin\classes.jar (系统找不到指定的文件。)
       [dx]     at java.util.zip.ZipFile.open(Native Method)
       [dx]     at java.util.zip.ZipFile.<init>(Unknown Source)
       [dx]     at java.util.zip.ZipFile.<init>(Unknown Source)
       [dx]     at java.util.zip.ZipFile.<init>(Unknown Source)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:244)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] 2 errors; aborting