2014-02-17 34 views
0

我收到了我在下面分享的错误。这与maven(imho)有关,我知道我的pom.xml有问题,但没有找到。我搜索了所有相同的主题,并且我得出的最新观点是应该从某些工件中排除某些东西,因为某些东西试图根据错误说明多次添加。顺便说一句,它可以编译没有任何问题通过maven但是我得到这个错误,当我想运行“包”。Android Maven意外的顶级例外[已解决]

[INFO]意外顶层例外: [INFO] java.lang.IllegalArgumentException异常:已经添加:Lorg/Codehaus的/ classwor LDS/BytesURLConnection; [INFO]在com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:12 2)

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.a</groupId> 
    <artifactId>a</artifactId> 
    <version>1.0.0</version> 
    <packaging>apk</packaging> 

    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <android.plugin.version>3.6.0</android.plugin.version> 
     <platform.version>2.3.3</platform.version> 
     <sdk_path>D:\Android</sdk_path> 
    </properties> 

    <dependencies> 
     <dependency> 
      <groupId>com.google.android</groupId> 
      <artifactId>android</artifactId> 
      <version>${platform.version}</version> 
      <scope>provided</scope> 
     </dependency> 

     <dependency> 
      <groupId>com.jayway.maven.plugins.android.generation2</groupId> 
      <artifactId>android-maven-plugin</artifactId> 
      <version>3.8.0</version> 
     </dependency> 

     <dependency> 
      <groupId>com.j256.ormlite</groupId> 
      <artifactId>ormlite-android</artifactId> 
      <version>4.47</version> 
     </dependency> 
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>com.jayway.maven.plugins.android.generation2</groupId> 
       <artifactId>android-maven-plugin</artifactId> 
       <version>3.8.0</version> 
       <configuration> 
        <sdk> 
         <platform>10</platform> 
         <path>${sdk_path}</path> 
        </sdk> 
        <dexOptimize>false</dexOptimize> 
        <dex> 
         <preDex>false</preDex> 
         <preDexLibLocation>/tmp/predexedLibs</preDexLibLocation> 
        </dex> 
       </configuration> 
       <extensions>true</extensions> 
      </plugin> 

      <plugin> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>3.1</version> 
       <configuration> 
        <source>1.6</source> 
        <target>1.6</target> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 


</project> 

回答

0
  1. 除去下面部分

    <dependency> 
        <groupId>com.jayway.maven.plugins.android.generation2</groupId> 
        <artifactId>android-maven-plugin</artifactId> 
        <version>3.8.0</version> 
    </dependency> 
    
  2. 和插入件建立元件下线以下

    <build> 
        <finalName>${project.artifactId}</finalName> 
        <sourceDirectory>src</sourceDirectory> 
    

最新的和正确的pom.xml应被视为低于

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.holyscreen</groupId> 
    <artifactId>HolyScreenApp</artifactId> 
    <version>1.0.0</version> 
    <packaging>apk</packaging> 

    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <android.plugin.version>3.6.0</android.plugin.version> 
     <platform.version>2.3.3</platform.version> 
     <sdk_path>D:\Android</sdk_path> 
    </properties> 

    <dependencies> 
     <dependency> 
      <groupId>com.google.android</groupId> 
      <artifactId>android</artifactId> 
      <version>${platform.version}</version> 
      <scope>provided</scope> 
     </dependency> 

     <dependency> 
      <groupId>com.j256.ormlite</groupId> 
      <artifactId>ormlite-android</artifactId> 
      <version>4.47</version> 
     </dependency> 
    </dependencies> 


    <build> 
     <finalName>${project.artifactId}</finalName> 
     <sourceDirectory>src</sourceDirectory> 
     <plugins> 
      <plugin> 
       <groupId>com.jayway.maven.plugins.android.generation2</groupId> 
       <artifactId>android-maven-plugin</artifactId> 
       <version>3.8.0</version> 
       <configuration> 
        <sdk> 
         <platform>10</platform> 
         <path>${sdk_path}</path> 
        </sdk> 
        <dexOptimize>false</dexOptimize> 
        <dex> 
         <preDex>false</preDex> 
         <preDexLibLocation>/tmp/predexedLibs</preDexLibLocation> 
        </dex> 
       </configuration> 
       <extensions>true</extensions> 
      </plugin> 

      <plugin> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>3.1</version> 
       <configuration> 
        <source>1.6</source> 
        <target>1.6</target> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 


</project> 
+0

请注明通过单击选中标记形象“接受”这个答案。根据Stack Overflow指南,将答案标记为“接受”是正确的方法。 –

+0

我做它已经,但它说:“你可以接受你自己的答案明天” –

+0

哦,对不起发送你在这种情况下,一场虚惊:) –

相关问题