gradle java9 ne Pouvait plate-forme cible: 'Java SE 9' l'aide de l'outil de la chaîne: 'JDK 8 (1.8)'
Je veux utiliser java9 sur mon gradle projet à l'intérieur de l'éclipse de l'oxygène. Quand J'
exécuter:
Run as> Gradle Test on GreeterTest.java
avec le code suivant:
package hello.test;
import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;
import hello.Greeter;
class GreeterTest {
@Test
void test() {
Greeter greeter = new Greeter();
assertEquals("Hello world", greeter.sayHello());
}
}
et avec la classe I du test:
package hello;
public class Greeter {
public String sayHello() {
return "Hello world!";
}
}
Je reçois le message d'erreur
Ne pouvait plate-forme cible: 'Java SE 9' à l'aide de
outil de la chaîne: 'JDK 8 (1.8)'.
Mon eclipse.init est
-startup ../Eclipse/plugins/org.eclipse.equinox.launcher_1.4.0.v20161219-1356.jar --launcher.library /Users/stein/.p2/pool/plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_.1.550.v20170928-1359 -product org.eclipse.epp.package.jee.product -showsplash org.eclipse.epp.package.common --launcher.defaultAction openFile --launcher.a/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/jre/bin -vmargs -Dosgi.requiredJavaVersion=1.9 -Dosgi.instance.area.default=@user.home/eclipse-workspace -XX:+UseG1GC -XX:+UseStringDeduplication --add-modules=ALL-SYSTEM -XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts -Dosgi.requiredJavaVersion=1.9 -Xms256m -Xmx1024m --add-modules=ALL-SYSTEM -Xdock:icon=../Resources/Eclipse.icns -XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts -Declipse.p2.max.threads=10 -Doomph.update.url=http://download.eclipse.org/oomph/updates/milestone/latest -Doomph.redirection.index.redirection=index:/->http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/
J'ai ajouté le chemin de génération
J'ai modifier le paramètre de compilation
J'ai mis le compiler paramètre dans la construction.Gradle.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.junit.platform:junit-platform-gradle-plugin:1.0.2'
}
}
repositories {
mavenCentral()
}
ext.junit4Version = '4.12'
ext.junitVintageVersion = '4.12.2'
ext.junitPlatformVersion = '1.0.2'
ext.junitJupiterVersion = '5.0.2'
ext.log4jVersion = '2.9.0'
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.junit.platform.gradle.plugin'
jar {
baseName = 'junit5-gradle-consumer'
version = '1.0.0-SNAPSHOT'
}
compileJava {
sourceCompatibility = 9
targetCompatibility = 9
}
compileTestJava {
sourceCompatibility = 9
targetCompatibility = 9
options.compilerArgs += '-parameters'
}
junitPlatform {
//platformVersion '1.0.2'
filters {
engines {
//include 'junit-jupiter', 'junit-vintage'
//exclude 'custom-engine'
}
tags {
//include 'fast'
exclude 'slow'
}
//includeClassNamePattern '.*Test'
}
//configurationParameter 'junit.jupiter.conditions.deactivate', '*'
//enableStandardTestTask true
//reportsDir file('build/test-results/junit-platform') //this is the default
logManager 'org.apache.logging.log4j.jul.LogManager'
}
dependencies {
//JUnit Jupiter API and TestEngine implementation
testCompile("org.junit.jupiter:junit-jupiter-api:${junitJupiterVersion}")
testRuntime("org.junit.jupiter:junit-jupiter-engine:${junitJupiterVersion}")
//If you also want to support JUnit 3 and JUnit 4 tests
testCompile("junit:junit:${junit4Version}")
testRuntime("org.junit.vintage:junit-vintage-engine:${junitVintageVersion}")
//To avoid compiler warnings about @API annotations in JUnit code
//testCompileOnly('org.apiguardian:apiguardian-api:1.0.0')
//To use Log4J's LogManager
testRuntime("org.apache.logging.log4j:log4j-core:${log4jVersion}")
testRuntime("org.apache.logging.log4j:log4j-jul:${log4jVersion}")
//Only needed to run tests in an (IntelliJ) IDE(A) that bundles an older version
testRuntime("org.junit.platform:junit-platform- launcher:${junitPlatformVersion}")
}
task wrapper(type: Wrapper) {
description = 'Generates gradlew[.bat] scripts'
gradleVersion = '4.1'
}
Que dois-je faire pour obtenir de l'exécuter?
que diriez-cli avec
Avec la dernière Intellij, il semble bien fonctionner pour moi.
Vous n'avez pas Java9 SDK installé sur la machine, ni ce JAVA_HOME + JAVA_PATH
./gradlew clean build
, faut-il travailler pour vous?Avec la dernière Intellij, il semble bien fonctionner pour moi.
Vous n'avez pas Java9 SDK installé sur la machine, ni ce JAVA_HOME + JAVA_PATH
OriginalL'auteur stein korsveien | 2017-11-26
Vous devez vous connecter pour publier un commentaire.
Vous devriez probablement essayer de mettre à jour votre
JAVA_HOME
dans les variables du système etVersion de Java utilisée dans eclipse pour être conforme à
Dans MacOSX, quelque chose comme :
Comme informé dans les commentaires, le chemin d'accès par défaut sur Linux serait :
OriginalL'auteur Naman
J'ai changé le
java_home
et mis à jour Gradle. Maintenant, il est de travail.Essayez de définir le JDK localisation sur la Java de l'onglet d'Accueil de la Configuration d'essai et de mise à niveau de l'emballage.
OriginalL'auteur stein korsveien
De ce que je peux voir, c'est le Gradle version en question. (Gradle et Java 9 problème de compatibilité).
Vous avez besoin de mettre à niveau le wrapper pour 4.3.1, cli ref:
Laissez-moi savoir si cela fonctionne.
OriginalL'auteur chenrui
Pour moi le problème c'est que j'ai utilisé
mais le projet a été configuré pour Java 1.8. Donc, je les ai modifiées pour 1_8 et il fonctionne.
OriginalL'auteur app developer 27