У меня был проект java, который я переконфигурировал в проект Maven. После переконфигурирования и добавления большей части необходимых зависимостей, я получаю следующую ошибку в консоли при запуске команды mvn install
. Я попробовал решение, упомянутое здесь по этой проблеме, но оно не помогает
Ниже приведены журналы консоли:
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building FlockHydraAutomation 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ FlockHydraAutomation ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 2 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.5.1:compile (default-compile) @ FlockHydraAutomation ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 15 source files to C:\Maven\FlockHydra-Automation\FlockHydraAutomation\target\classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.249 s
[INFO] Finished at: 2017-09-23T13:44:15+05:30
[INFO] Final Memory: 10M/220M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1:compile (default-compile) on project FlockHydraAutomation: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
POM файл:
<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.Flock</groupId>
<artifactId>FlockHydraAutomation</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>FlockHydraAutomation</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<sourceDirectory>flockWebclient</sourceDirectory>
<resources>
<resource>
<directory>resources</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
Прилагается скриншот компилятора Java: компилятор Java
Основываясь на вашем комментарии к предыдущему ответу, похоже, что вы действительно указываете на JDK. Итак, теперь вы можете попробовать это, Open Eclipse и goto Windows-> настройки → Java → установленные JRE, и проверить, указали ли вы на JRE. Если да, измените путь к вашему JDK и попробуйте снова запустить сборку Maven. Надеюсь, это поможет решить проблему.
Вы должны убедиться, что ваша переменная окружения JAVA_HOME
указывает на JDK (а не JRE), как упоминает ошибка.
[ОШИБКА] В этой среде компилятор не предусмотрен. Возможно, вы работаете на JRE, а не на JDK?
Выполнить mvn -version
. На выходе будет показано, к какому директорию JAVA_HOME. Затем убедитесь, что это JDK, установив переменную JAVA_HOME
в путь JDK.
У меня был такой же вопрос, как и предыдущие рекомендации, но опубликованные данные сохраняются.
ниже был мой pom.xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.4</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<fork>true</fork>
<executable>C:\Program Files\Java\jdk\bin\javac</executable>
</configuration>
<executions>
<execution>
<id>tomcat-run</id>
<goals>
<goal>exec-war-only</goal>
</goals>
<phase>package</phase>
<configuration>
<path>/</path>
<attachartifactclassifier>exec-war</attachartifactclassifier>
<attachartifactclassifiertype>jar</attachartifactclassifiertype>
</configuration>
</execution>
<execution>
<goals>
<goal>spring-boot:run</goal>
</goals>
</plugin>
</plugins>
Чтобы устранить проблему, используйте этот pom.xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
Приложен снимок моей среды IDE.
mvn -version
anc для вашей java-версии и java home там.