`
lizhensan
  • 浏览: 377816 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

为什么使用rt.jar的内部类,在eclipse运行没问题,而在mvn编译的时候失败呢

    博客分类:
  • java
 
阅读更多
Sun's *java compiler* detects when a special 
"internal" class is being accessed, and refuses to import the class. 
Eclipse uses a different compiler which presumably does not have this check. 

Maven just uses the javac compiler available in the system execution 
path. Therefore the problem is nothing to do with Maven at all. It's the 
compiler that maven is invoking which is refusing to compile the source. 
I can't see any public flags in the javac commandline to disable this 
"blocking" of internal access, so unless you want to avoid using Sun's 
javac compiler you'll just have to avoid using this internal class. 

为什么使用rt.jar的内部类,在eclipse运行没问题,而在mvn编译的时候失败呢?

 

maven 编译的时候,默认使用jdk的javac进行编译,javac本身是不支持访问内部类的

 

而在eclipse中编译没问题,也可以运行成功,那是因为在eclipse中它的编译器是eclipse自己写的

并没做这样的限制

 

所以把mvn的编译器换成eclipse的实现应该就ok了

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.1</version>
				<configuration> 
					<compilerId>eclipse</compilerId>
					<source>1.6</source>
					<target>1.6</target>
					<optimize>true</optimize>
					 <verbose>false</verbose> 
					<useIncrementalCompilation>false</useIncrementalCompilation>
					<showWarnings>false</showWarnings>
          <showDeprecation>false</showDeprecation>
					 <debug>false</debug> 
				</configuration>
				<dependencies>
				  <dependency>
                        <groupId>org.codehaus.plexus</groupId>
                        <artifactId>plexus-compiler-eclipse</artifactId>
						<!---2.2  org.eclipse.jdt.core-3.8.1.v20120531-0637 -->
						<!---2.1  org.eclipse.jdt.core-3.8.1.v20120531-0637 --> 
                        <version>2.2</version>
                    </dependency> 
				</dependencies>
			</plugin>

 

分享到:
评论

相关推荐

    hudi编译失败,不能通过maven自动下载的jar包

    hudi编译失败,不能通过maven自动下载的jar包,包括: pentaho-aggdesigner-algorithm-5.1.5-jhyde.jar, kafka-schema-registry-client-5.3.4.jar,kafka-avro-serializer-5.3.4.jar,common-utils-5.3.4.jar,common-...

    ojdbc5.jar ojdbc6.jar maven安装以及pom.xml配置说明

    `scope`设置为`runtime`意味着在编译时Maven不会包含此依赖,但在运行时会加载它,这对于减少编译时的依赖体积是有益的。 安装ojdbc6.jar到本地Maven仓库的步骤如下: 1. 下载ojdbc6.jar文件。 2. 打开命令行,...

    解决maven项目找不到tools-1.8.0.jar的问题,缺失tools-1.8.0.jar包

    然而,有时候在运行Maven项目时,可能会遇到找不到特定jar包的问题,比如本例中的`tools-1.8.0.jar`。这个问题通常表明Maven在构建路径或本地仓库中未找到该依赖。下面我们将详细探讨如何识别、解决此类问题。 首先...

    jmeter-websocket-jar包

    org.eclipse.jetty.io_9.1.1.v20140108.jar org.eclipse.jetty.util_9.1.1.v20140108.jar org.eclipse.jetty.websocket.api_9.1.1.v20140108.jar org.eclipse.jetty.websocket.client_9.1.1.v20140108.jar org....

    eclipse 导出 mvn jar 工具

    然而,有时我们需要将Eclipse中的Maven项目导出为可执行的JAR文件,以便在没有IDE的环境中运行或分发。本篇文章将详细介绍如何通过编写批处理脚本(bat文件)在Eclipse中导出Maven项目生成的JAR文件。 首先,让我们...

    maven下载QRCode.jar包

    在IT行业中,Maven是一个广泛使用的项目管理和综合工具,它主要负责构建、依赖管理和项目信息管理。本话题聚焦于如何通过Maven下载`QRCode.jar`包,这是一款用于生成二维码的Java库。二维码(Quick Response Code)...

    ZXing core.jar包

    4. **使用核心库**:一旦`core.jar`成功编译并安装,你就可以在你的项目中通过Maven依赖或直接添加到类路径上来使用它。 `zxing-2.2`是ZXing的一个特定版本,这表明你可能需要一个特定版本的`core.jar`来兼容你的...

    rocketmq-exporter-0.0.2-SNAPSHOT.jar

    prometheus监控rocketmq用到的rocketmq-exporter jar包,官方github.com/apache/rocketmq-exporter,mvn打包

    maven 下载 sqljdbc4-4.0.jar

    在本篇中,我们将深入探讨`sqljdbc4-4.0.jar`以及如何在Maven项目中下载和使用它。 `sqljdbc4-4.0.jar`是SQL Server JDBC Driver的一个版本,它符合JDBC 4.0规范。这个驱动程序提供了全面的功能,包括连接池管理、...

    连接池c3p0jar c3p0-0.9.5.2.jar mchange-commons-java-0.2.11.jar

    c3p0-0.9.5.2.jar mchange-commons-java-0.2.11.jar commons-logging-1.2.jar mysql-connector-java-5.1.43-bin.jar

    java音频开发.mp3文件解码jmp123.jar

    java音频开发.mp3文件解码jmp123.jar

    jave-1.0.2.jar

    标题中的"jave-1.0.2.jar"是一个Java的可执行文件,通常被称为Java Archive(JAR)文件。这种文件格式用于打包Java类、...要使用该库的功能,开发者需在项目中添加相应的Maven依赖,或者在运行时确保JAR在类路径中。

    dns_sd.jar

    2. **Maven或Gradle依赖问题**:如果项目使用Maven或Gradle进行构建管理,那么对应的POM.xml或build.gradle文件中可能未正确声明`dns_sd.jar`为依赖项。 3. **JRE版本不兼容**:项目的Java运行时环境(JRE)版本可能...

    使用dos命令实现mvn的自动编译以及test case的运行

    标题 "使用dos命令实现mvn的自动编译以及test case的运行" 描述了如何在DOS命令行环境中利用Maven(mvn)工具进行自动化编译和测试用例的执行。这一主题对于任何Java开发者来说都至关重要,因为它涉及到项目构建自动...

    aspose-words-21.1-jdk17.jar jar包和示例

    aspose-words-21.1-jdk17.jar 处理word转pdf,无水印无文件大小限制,无使用时间限制,可以用于word编辑处理,转pdf等用途。 。由于aspose调用的时候有点消耗内存,操作大文件的时候可能会堆溢出,所以请先设置好...

    olap4j-0.9.7.309-JS-3.jar包.rar

    下载之后再maven的bin目录下使用mvn命令:mvn install:install-file -Dfile=F:\apache-maven-3.5.3\mylib\olap4j-0.9.7.309-JS-3.jar -DgroupId=org.olap4j -DartifactId=olap4j-0.9.7.309-JS-3 -Dversion=0.9.7.309...

    spire.doc-5.4.10.jar

    可以添加本地依赖通过命令mvn install:install-file -Dfile=C:\Users\spire.doc-5.4.10.jar -DgroupId=e-iceblue -DartifactId=spire.doc -Dversion=5.4.10 -Dpackaging=jar将该依赖添加到本地依赖库使用,其他添加...

    jodconverter-2.2.2.jar和jodconverter-cli-2.2.2.jar

    jodconverter-2.2.2.jar和jodconverter-cli-2.2.2.jar jodconverter-2.2.1不支持docx格式的word文档转换,2.2.2支持 linux和windows安装openOffice java通过jodconverter 将excel、doc文件转成pdf或html,比2.2.1...

    ojdbc7.jar

    资源包xxxx.jar真实,自己按照下面模式: oracle6.jar, oracle7.jar, oracle8.jar, oracle10.jar,安装至Maven下, ojdbc6.jar仅为示例: &lt;groupId&gt;com.oracle&lt;/groupId&gt; &lt;artifactId&gt;ojdbc6 &lt;version&gt;12.1.0.1-...

    spire.doc-5.4.0.jar

    可以添加本地依赖通过命令mvn install:install-file -Dfile=C:\Users\spire.doc-5.4.0.jar -DgroupId=e-iceblue -DartifactId=spire.doc -Dversion=5.4.0 -Dpackaging=jar将该依赖添加到本地依赖库使用,其他添加到...

Global site tag (gtag.js) - Google Analytics