0

在我的 Maven 构建过程中,我遇到了这样的错误:

[错误] /sandbox/mobile-apps/quickdroid/test/src/com/xxx/MyActivity.java:[14,21] java.util.LinkedHashMap.Entry 在 java.util.LinkedHashMap 中具有私有访问权限

我用一个类创建了一个简单的测试项目。此错误对应于以下代码:

        LinkedHashMap.Entry<String, Object> test;

Intellij 可以很好地编译此代码。如果我在我的 intellij javac 参数中更改 -target=1.5,那么我会得到同样的错误。下面在我的 pom.xml 中,我指定了目标 1.6,并使用 -X 参数验证了 maven 正在获取此设置。为什么我会收到错误,好像它仍在编译目标 1.5?

maven -X 输出的摘录:1.6

.

[调试] (f) 源 = 1.6 [调试] (f) staleMillis = 0 [调试] (f) 目标 = 1.6

.

[调试] 命令行选项:[调试] -d /sandbox/mobile-apps/quickdroid/test/target/classes -classpath {...} -g -nowarn -target 1.6 -source 1.6

pom.xml

<?xml version="1.0" encoding="UTF-8"?>

http://maven.apache.org/maven-v4_0_0.xsd">4.0.0

<groupId>com.xxx.android</groupId>
<artifactId>test</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>apk</packaging>
<name>test</name>

<dependencies>

    <dependency>
        <groupId>com.google.android</groupId>
        <artifactId>android</artifactId>
        <version>4.1.1.4</version>
        <scope>provided</scope>
    </dependency>
</dependencies>

<build>
    <sourceDirectory>src</sourceDirectory>
    <plugins>
        <plugin>
            <groupId>com.jayway.maven.plugins.android.generation2</groupId>
            <artifactId>android-maven-plugin</artifactId>
            <version>3.3.2</version>
            <extensions>true</extensions>
            <configuration>
                <sdk>
                    <!-- platform or api level (api level 4 = platform 1.6)-->
                    <platform>11</platform>
                </sdk>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.5.1</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
    </plugins>
</build>

4

0 回答 0