jar中的Java调用函数
我的java应用程序崩溃了 当我试图从.jar文件中实现的类调用静态方法时,就会发生这种情况 下面是错误:jar中的Java调用函数,java,android,jar,noclassdeffounderror,Java,Android,Jar,Noclassdeffounderror,我的java应用程序崩溃了 当我试图从.jar文件中实现的类调用静态方法时,就会发生这种情况 下面是错误: 02-28 15:38:55.712: ERROR/AndroidRuntime(323): java.lang.NoClassDefFoundError: TOOLS.CLog 这里调用我的函数: mylog=CLog.getInstance(); 下面是我在.jar中的类: public class CLog implements iLog { static private CLo
02-28 15:38:55.712: ERROR/AndroidRuntime(323): java.lang.NoClassDefFoundError: TOOLS.CLog
这里调用我的函数:
mylog=CLog.getInstance();
下面是我在.jar中的类:
public class CLog implements iLog {
static private CLog m_instance=null;
public static iLog getInstance() {
if (m_instance==null) {
m_instance=new CLog();
}
return m_instance;
}
请帮忙
编辑:
我的类路径
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="gen"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry kind="output" path="bin"/>
</classpath>
应该是(注意包装)
具有完全限定有效名称的导入类是libs/目录中的jar with TOOLS包,以便它与其他类一起部署到设备上?该错误不是来自Eclipse中的类路径设置,而是来自设备,该设备找不到该类
当jar位于libs/文件夹中时,默认工具将自动将其与应用程序打包。您的类路径是什么?堵塞在你的课堂道路上吗?@Nishant我想我们都能亲眼看到,thanks@josh.trow是的,我意识到我的话不好。正在删除。当然,我使用了
包工具
,并将其作为导入工具.CLog导入。这里我只放了一些代码行…这个jar在你的类路径中吗?是的,当我编译时,jar在我的类路径中,这就是为什么我的导入没有错误。我在跑道上撞车了就这样。!您还需要classpath@runtime中的jar。我使用ant使用ant debug-lib C:\…\TOOLS.jar
进行编译。我用adb.exe install C:\…\application.apk运行我的应用程序
Yes!当我将TOOLS.jar
移动到libs/
文件夹时,它会工作!如何使ant在原始文件夹中而不是在libs/
文件夹中使用我的.jar?您可以在build.xml中启用-pre-build target
,将其从原始位置复制到libs/
。
package TOOLS;
public class CLog implements iLog {
static private CLog m_instance=null;
public static iLog getInstance() {
if (m_instance==null) {
m_instance=new CLog();
}
return m_instance;
}