我在尝试运行干净并在maven上安装时遇到了一个奇怪的问题。我收到以下错误消息:
Caused by: org.codehaus.plexus.compiler.CompilerException: tools.jar not found: C:\Program Files\Java\jre1.8.0_25\..\lib\tools.jar
at org.codehaus.plexus.compiler.javac.JavacCompiler.createJavacClass(JavacCompiler.java:987)
at org.codehaus.plexus.compiler.javac.JavacCompiler.getJavacClass(JavacCompiler.java:944)
at org.codehaus.plexus.compiler.javac.JavacCompiler.compileInProcess(JavacCompiler.java:520)
at org.codehaus.plexus.compiler.javac.JavacCompiler.compile(JavacCompiler.java:167)
at org.apache.maven.plugin.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:678)
... 14 more
我查找了这个问题的常见原因,并且大多数人都说问题必须是我需要在已安装的JRE中指向JDK(并且在错误消息中我看到它实际上指向了JRE)。但是,当我检查我安装的JRE时,它指向一个JDK:
Java Home设置在这里:
可能导致此错误的任何想法?
答案 0 :(得分:0)
您正在使用JRE,您需要将JAVA_HOME
环境变量设置为JDK路径。
答案 1 :(得分:0)
您是否从工作时更改了public class FutureValidator implements ConstraintValidator<Future, Temporal> {
@Override
public void initialize(Future constraintAnnotation) {
}
@Override
public boolean isValid(Temporal value, ConstraintValidatorContext context) {
if (value == null) {
return true;
}
LocalDate ld = LocalDate.from(value);
return ld.isAfter(LocalDate.now());
}
}
?当您从命令行执行PATH
时,Maven会将Java源代码的构建委派给mvn clean install
中的javac
。快速检查是将PATH
设置为PATH
并重试set PATH="<path-to-jdk\bin>;<rest>"
。