1

スクリーンショットに見られるように、モジュール/プロジェクトはjdk 1.7に設定されています

プロジェクト/sdk を 7 に設定:

ここに画像の説明を入力

jdk 7 に設定されたモジュール:

ここに画像の説明を入力

ただし、javap からは Java 6 (50) が表示されます ??

a) クラスがコンパイルされたことを確認します (7/22/15 @18:14):

ls -l ./target/classes/org/yardstickframework/spark/DataGenerator.class
-rw-r--r--  1 steve  staff  3829 Jul 22 18:14 ./target/classes/org/yardstickframework/spark/DataGenerator.class

b) どのバージョンの Java?

javap -verbose ./target/classes/org/yardstickframework/spark/DataGenerator.class | grep ver
  minor version: 0
  major version: 50

注: pom.xml は言語レベルをjdk7に設定します。

        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
        </plugin>

更新 提案に従って、コマンドラインからコンパイルを実行しました:

mvn clean compile

これにより jdk6 /major version=50 になります。では、なぜでしょうか?私はPOMを調べて、他の奇妙なものが存在するかどうかを確認しています.

ローマンのリクエストごとの別の更新:ここにmaven出力があります

$mvn -v
Apache Maven 3.1.1 (0728685237757ffbf44136acec0402957f723d9a; 2013-09-17 08:22:22-0700)
Maven home: /usr/local/Cellar/maven/3.1.1/libexec
Java version: 1.7.0_25, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.10", arch: "x86_64", family: "mac"

さらに別の更新ElliottFrisch は、maven コンパイラー・プラグインへのいくつかの追加を提案しました。更新されたセクションは次のとおりです。

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <fork>true</fork>
                <verbose>true</verbose>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
        </plugin>
4

1 に答える 1