Android apk缺少源代码类(使用maven编译)
我正在用Maven和Eclipse构建一个Android应用程序,在部署到Android之后遇到了一个问题。我正在使用mvn clean install android:deploy来编译和部署我的应用程序,但尽管上传到手机后生成的apk没有任何错误,但我得到了一个奇怪的行为 该应用程序启动良好(包括一些不同的活动),我可以通过act。1.采取行动。2和从法案。2.采取行动。但当我试图继续表演的时候。3.采取行动。4应用程序因“未找到类”异常而停止 我真的很绝望,因为我花了很长时间试图猜出什么是错误的,但没有结果,一件奇怪的事情是,如果我查看目标/类内部,导致错误的相应.class文件就在那里 我正在使用Maven 3.1和android Maven插件,我的pom文件复制如下。我真的很绝望,因为我无法找到解决方案,所以任何帮助都将不胜感激 提前谢谢 D http://maven.apache.org/maven-v4_0_0.xsd"> 4.0.0 com.myApp.myApp myApp 1 apk myAppAndroid apk缺少源代码类(使用maven编译),android,maven,Android,Maven,我正在用Maven和Eclipse构建一个Android应用程序,在部署到Android之后遇到了一个问题。我正在使用mvn clean install android:deploy来编译和部署我的应用程序,但尽管上传到手机后生成的apk没有任何错误,但我得到了一个奇怪的行为 该应用程序启动良好(包括一些不同的活动),我可以通过act。1.采取行动。2和从法案。2.采取行动。但当我试图继续表演的时候。3.采取行动。4应用程序因“未找到类”异常而停止 我真的很绝望,因为我花了很长时间试图猜出什么是
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<platform.version>4.1.1.4</platform.version>
<android.plugin.version>3.8.1</android.plugin.version>
<keystore.location>/home/myName/Documents/projects/MyApp/keystore/MyApp_keystore</keystore.location>
<keystore.password></keystore.password>
<keystore.keypass></keystore.keypass>
<keystore.alias>myapp</keystore.alias>
</properties>
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>support-v4</artifactId>
<version>r7</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.8</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-android</artifactId>
<version>1.6.1-RC1</version>
</dependency>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<version>4.1.1.4</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}_unsigned</finalName>
<sourceDirectory>src/main/java</sourceDirectory>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<extensions>true</extensions>
<inherited>true</inherited>
<configuration>
<sign>
<debug>false</debug>
</sign>
<sdk>
<platform>19</platform>
</sdk>
<zipalign>
<skip>false</skip>
<verbose>true</verbose>
<inputApk>${project.build.directory}/${project.artifactId}_unsigned.apk</inputApk>
<outputApk>${project.build.directory}/${project.artifactId}.apk</outputApk>
</zipalign>
<undeployBeforeDeploy>true</undeployBeforeDeploy>
</configuration>
<executions>
<execution>
<id>zipalign</id>
<phase>verify</phase>
<goals>
<goal>zipalign</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jarsigner-plugin</artifactId>
<executions>
<execution>
<id>signing</id>
<goals>
<goal>sign</goal>
<goal>verify</goal>
</goals>
<phase>package</phase>
<inherited>true</inherited>
<configuration>
<removeExistingSignatures>true</removeExistingSignatures>
<archiveDirectory/>
<includes>
<include>${project.build.directory}/${project.artifactId}.apk</include>
</includes>
<keystore>${keystore.location}</keystore>
<alias>${keystore.alias}</alias>
<storepass>${keystore.password}</storepass>
<keypass>${keystore.keypass}</keypass>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
UTF-8
4.1.1.4
3.8.1
/home/myName/Documents/projects/MyApp/keystore/MyApp_keystore
myapp
com.google.android
支持-v4
r7
假如
通用编解码器
通用编解码器
1.8
org.slf4j
slf4j安卓
1.6.1-RC1
com.google.android
安卓
4.1.1.4
假如
${project.artifactId}\u未签名
src/main/java
com.jayway.maven.plugins.android.generation2
安卓maven插件
真的
真的
假的
19
假的
真的
${project.build.directory}/${project.artifactId}\u unsigned.apk
${project.build.directory}/${project.artifactId}.apk
真的
优化
验证
优化
org.apache.maven.plugins
maven jarsigner插件
签字
签名
验证
包裹
真的
真的
${project.build.directory}/${project.artifactId}.apk
${keystore.location}
${keystore.alias}
${keystore.password}
${keystore.keypass}
万一有人面临同样的问题,最后,经过一周的绝望寻找解决方案,结果证明这是一件非常愚蠢和简单的事情 有问题的类使用android支持,正如在pom.xml中,我错误地包含了为android支持依赖项提供的内容,这使得android支持jar没有包含在maven dependencies文件夹中,所以这就是问题所在,类没有找到它 这里的问题是,错误并不清楚,因为它抱怨缺少类,而不是缺少jar之类的东西。它一直在我眼前,但我没有看到它 我希望它能帮助有同样问题的人