我正在尝试运行一个示例Android应用。该应用程序使用Maven来管理项目。当我运行项目时,我收到以下错误:
Could not find class 'oauth.signpost.commonshttp.CommonsHttpOAuthConsumer', referenced from method....
但是在pom.xml文件中我有
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<version>1.6_r2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>oauth.signpost</groupId>
<artifactId>signpost-core</artifactId>
<version>1.2.1.1</version>
</dependency>
<dependency>
<groupId>oauth.signpost</groupId>
<artifactId>signpost-commonshttp4</artifactId>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20090211</version>
</dependency>
</dependencies>
鉴于依赖项可以在编译时解决,因为它显然位于依赖项列表中,我需要做些什么来解决运行时错误?
我正在使用Windows 7,JDK 1.6,Eclipse Indigo(使用Maven插件)
谢谢, 千斤顶
我刚刚注意到在Eclipse中使用带有“依赖关系”视图的m2e查看我的pom文件时(不是原始xml)。我明白了:
android:1.6_r2:jar [provided]
signpost-core:1.2.1.1 [compile]
json:20090211:jar [compile]
signpost-commonshttp4
标识依赖项的字符串似乎不完整,没有类型或版本号,它也不显示范围。
答案 0 :(得分:0)
除非你有一些dependencyManagement,否则你的signpost-commonshttp4工件需要一个版本。
答案 1 :(得分:0)
行。我找到了我错的地方。我以为我可以像正常那样使用Eclipse来构建和调试我的应用程序,但我不能。我需要运行一个Maven命令,它使用android插件将apk安装到设备上(而不是Eclipse)。
安装应用程序后,我可以在设备上启动应用程序,并在Eclipse中使用DDMS来调试应用程序。我运行的命令是:
mvn install android:deploy
我发现mvn-android-plugin wiki page的以下页面很有用。