2012-04-24 35 views
2

我不断收到引用jsoup的NoClassDefFoundError。我在libs目录中有jar,但在Android Manifest文件中没有对我的jar文件的引用。这可能是问题吗?Android jar目录

回答

1

jsoup是外部jar对吗?你有没有添加这个jar到你的项目中?选择Build Path-> configure build path-> select libraries tab->添加外部Jars.You把jsoup放到libs目录下,它仍然没有链接到你的项目,直到你把它添加为外部jar.Sorry如果我误解你的问题。

+0

如何在Netbeans中做到这一点,我没有看到一个参考,以构建路径 – user1154644 2012-04-24 02:33:05

+0

哦,我不是在Netbeans的工作,在日食您正好舔你的项目。也许你可以从谷歌搜索如何在netbeans中添加外部罐子来得到答案。 – MichaelP 2012-04-24 02:36:18

+0

我很确定他们在那里,我的Netbeans指向libs目录,“JAR库的位置”指向我的libs目录 – user1154644 2012-04-24 02:38:59

2

请参阅此LINK以了解如何使用netbeans将外部jar包含在您的应用程序中。

+0

我没有看到dist目录。我看到了生成的apk文件,但我不确定如何打开它并查看该jar文件是否包含在构建中。 – user1154644 2012-04-24 02:42:45

0

随着乔恩·西蒙中写道this blog post:

,我已经与NBAndroid Netbeans的 插件注意到一个非常恼人的问题,就是它不知道如何正确地连接外部JAR文件 到Android项目。如果你右键点击库( 你的项目文件夹),然后点击'添加JAR /文件夹',它会添加一个 引用到该库/ JAR文件,它会在 代码中识别出来(检测所有课程等)。问题在于当您尝试编译项目时 - 此时,它实际上并未将JAR 添加到项目中,这反过来在运行时会出现错误。

它实际上花了我很长时间才找到解决方案,并在那个恼人的一个 。为了纠正这个问题,你必须打开 你的build.xml文件(它位于你的项目文件夹下,但隐藏在netbeans环境中的 )。我不得不打开我的文件资源管理器(Finder 在我的mac上:-)),然后转到项目文件夹并从那里打开它。添加以下位导入文件标记下:

<target name="-pre-jar"> 
    <copy todir="${build.classes.dir}"> 
    <fileset dir="/path/to/your/jar/directory" /> 
    </copy> 
</target> 

所以,如果你的JAR在/home/bla/myjars/lala.jar那么你的路径应 是“/家/ BLA/myjars”。

现在,尝试重新编译它,它应该工作正常。

+2

我需要做什么才能让pre-jar作为正常构建的一部分运行? – user1154644 2012-04-24 02:59:26

+2

我看到它下build-xml,但它灰显 – user1154644 2012-04-24 03:01:12

+1

您可以检查[this](http://stackoverflow.com/questions/2057804/how-can-i-use-an-external-jar-in-an -android-project-in-netbeans)类似的SO问题得到更清楚。因为我通常使用eclipse作为我的开发IDE。 – 2012-04-24 04:22:06