Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.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
NoClassDefFoundError:org.slf4j.LoggerFactory在带有Graphhopper的Android应用程序上_Android_Eclipse_Graphhopper - Fatal编程技术网

NoClassDefFoundError:org.slf4j.LoggerFactory在带有Graphhopper的Android应用程序上

NoClassDefFoundError:org.slf4j.LoggerFactory在带有Graphhopper的Android应用程序上,android,eclipse,graphhopper,Android,Eclipse,Graphhopper,我目前正在开发一个Android应用程序,我想使用嵌入该应用程序的graphhoper0.3(我无法设置服务器)。 我正在使用Android 4.0,EclipseKepler,Maven 3.2.1,Android for Maven Eclipse 1.0.1 我首先尝试拉分支0.3并将“核心”文件夹设置为一个Eclipse项目,然后将其添加到我的android项目的构建路径中。我还尝试直接使用graphhopper-0.3-android.jar Android项目主活动onStart()

我目前正在开发一个
Android
应用程序,我想使用嵌入该应用程序的
graphhoper0.3
(我无法设置服务器)。 我正在使用Android 4.0,
EclipseKepler
Maven 3.2.1
Android for Maven Eclipse 1.0.1

我首先尝试拉分支0.3并将“核心”文件夹设置为一个
Eclipse
项目,然后将其添加到我的android项目的构建路径中。我还尝试直接使用
graphhopper-0.3-android.jar

Android项目主活动onStart():

不幸的是,每次我都会出现以下错误:

java.lang.NoClassDefFoundError: org.slf4j.LoggerFactory
它不会出现在常规Java项目中;只有在安卓系统中。 我尝试将
slf4j
JAR
添加到构建路径,但没有成功

任何帮助都将不胜感激!这是我在这里的第一篇帖子,我真的不知道还有什么可以尝试的。如果您需要更多关于我的设置或任何信息,请询问


编辑


在验证答案的注释中填写完整的解决方案。

因为您试图直接使用Graphhopper,所以Maven没有下载Graphhopper的所有依赖项。为了解决这个问题,您应该将Graphhopper添加为Maven依赖项,或者尝试“手动”解决依赖项,即通过将缺少的类添加到构建路径并将它们导出到APK(如果您使用的是Maven,那么只需将依赖项添加到pom.xml,而不使用scope标记).

在将库添加到构建路径时,您遇到了什么错误?如果我在构建路径中添加作者提供的所有sfl4j JAR,并将android、api、jdk14和log4j12与项目一起导出,我会发现:无法执行dex:多个dex文件定义Lorg/slf4j/impl/StaticLoggerBinder;我一开始考虑过这一点,但当我在常规Java项目中创建GraphHopper实例时,它工作得非常好。。。除了Graphhopper导入的项目外,我没有使用Maven。我正试图用Maven配置一个新的Android项目,并在其中添加“GraphOper”依赖项。也许在“普通Java”运行时的路径上有SLF4J?请确保您的设备上没有SLF4J。只要添加SLF4J作为依赖项,我会在Eclipse中解决“consume aar”、maven和ADT错误后立即尝试。现在,我无法在Eclipse中使用Maven管理Android项目。这就是为什么我一开始就想避免它。好吧,终于成功了!我没有使用IDE,只是从maven创建了一个“android快速启动”项目,并使用一个简单的文本编辑器编辑文件,以添加我的GraphHopper代码行和依赖项。下一步是使用IDE。。。不过,我将始终需要通过Maven进行构建。谢谢也许可以试试Android Studio。应该无缝地处理Maven。
java.lang.NoClassDefFoundError: org.slf4j.LoggerFactory