maven编译找不到符号 sun.org.mozilla.javascript.internal

来源:互联网 发布:minitab分析股市数据 编辑:程序博客网 时间:2024/05/19 04:27


问题:

[ERROR] 位置: 类 cn.ffcs.dep.rule.script.javascript.JSAdapter 软件包 sun.org.mozilla.javascript.internal 不存在
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-p
lugin:3.1:compile (default-compile) on project sq-edi-component: Compilation failure
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)

Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure
        at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:858)


解决:

 添加javac编译时的参数bootclasspath,oracle sun不鼓励开发人员直接使用sun.*里面的代码,主要的原因是sun.*里面的代码就是实现jvm的底层代码,是平台相关的,而且相关实现随着版本升级随时可能会被替换,代码的稳定性、一致性等等都存在问题. 参考下http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javac.html javac的相关参数说明


Sometimes, you need to pass other compiler arguments that are not handled by the Compiler Plugin itself but is supported by thecompilerId selected. For such arguments, the Compiler Plugin's compilerArguments will be used. The following example passes compiler arguments to thejavac compiler:

<project>  [...]  <build>    [...]    <plugins>      <plugin>        <groupId>org.apache.maven.plugins</groupId>        <artifactId>maven-compiler-plugin</artifactId>        <version>2.3.2</version>        <configuration>          <compilerArgument>-verbose -bootclasspath ${java.home}\lib\rt.jar</compilerArgument>        </configuration>      </plugin>    </plugins>    [...]  </build>  [...]</project>

Or you can also use the Map version:

<project>  [...]  <build>    [...]    <plugins>      <plugin>        <groupId>org.apache.maven.plugins</groupId>        <artifactId>maven-compiler-plugin</artifactId>        <version>2.3.2</version>        <configuration>          <compilerArguments>            <verbose />            <bootclasspath>${java.home}\lib\rt.jar</bootclasspath>          </compilerArguments>        </configuration>      </plugin>    </plugins>    [...]  </build>  [...]</project



0 0
原创粉丝点击