求教关于maven编译找不到java.lang包的问题

老实的萌新 2015-08-25 09:07:37
最近自己写了一个写了一个demo,环境为maven+spring+mybatis+springMVC jdk版本为1.6 中间件为tomcat
然而在对项目打包时提示错误如下:
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.363s
[INFO] Finished at: Tue Aug 25 08:56:08 CST 2015
[INFO] Final Memory: 23M/348M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project mydemo: Compilation failure
[ERROR] Failure executing javac, but could not parse the error:
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\dao\user\impl\UserDaoImpl.java]
[ERROR] [解析已完成时间 15ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\entity\User.java]
[ERROR] [解析已完成时间 3ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\dao\base\impl\BaseDaoImpl.java]
[ERROR] [解析已完成时间 2ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\pojo\PageResult.java]
[ERROR] [解析已完成时间 1ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\service\base\impl\BaseServiceImpl.java]
[ERROR] [解析已完成时间 0ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\dao\base\BaseDao.java]
[ERROR] [解析已完成时间 1ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\service\user\UserService.java]
[ERROR] [解析已完成时间 1ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\service\base\BaseService.java]
[ERROR] [解析已完成时间 1ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\util\CommonUtils.java]
[ERROR] [解析已完成时间 1ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\util\SecretUtils.java]
[ERROR] [解析已完成时间 2ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\util\JsonUtils.java]
[ERROR] [解析已完成时间 1ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\action\base\BaseAction.java]
[ERROR] [解析已完成时间 1ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\service\user\impl\UserServiceImpl.java]
[ERROR] [解析已完成时间 1ms]
[ERROR] [解析开始时间 D:\work\workspace\mydemo\src\main\java\com\mydemo\dao\user\UserDao.java]
[ERROR] [解析已完成时间 1ms]
[ERROR] [源文件的搜索路径: D:\work\workspace\mydemo\src\main\java,]
[ERROR] [类文件的搜索路径: D:\work\jdk_1.6u45_x64\jre\lib\rt.jar,D:\work\jdk_1.6u45_x64\jre\lib\jce.jar,D:\work\jdk_1.6u45_x64\jre\lib\ext\dnsns.jar,D:\work\jdk_1.6u45_x64\jre\lib\ext\localedata.jar,D:\work\jdk_1.6u45_x64\jre\lib\ext\sunjce_provider.jar,D:\work\jdk_1.6u45_x64\jre\lib\ext\sunmscapi.jar,D:\work\workspace\mydemo\target\classes,D:\work\m2_repository\org\springframework\spring-web\4.0.6.RELEASE\spring-web-4.0.6.RELEASE.jar,D:\work\m2_repository\org\springframework\spring-aop\4.0.6.RELEASE\spring-aop-4.0.6.RELEASE.jar,D:\work\m2_repository\aopalliance\aopalliance\1.0\aopalliance-1.0.jar,D:\work\m2_repository\org\springframework\spring-beans\4.0.6.RELEASE\spring-beans-4.0.6.RELEASE.jar,D:\work\m2_repository\org\springframework\spring-context\4.0.6.RELEASE\spring-context-4.0.6.RELEASE.jar,D:\work\m2_repository\org\springframework\spring-core\4.0.6.RELEASE\spring-core-4.0.6.RELEASE.jar,D:\work\m2_repository\javax\servlet\servlet-api\2.5\servlet-api-2.5.jar,D:\work\m2_repository\org\springframework\spring-aspects\4.0.6.RELEASE\spring-aspects-4.0.6.RELEASE.jar,D:\work\m2_repository\org\aspectj\aspectjweaver\1.8.1\aspectjweaver-1.8.1.jar,D:\work\m2_repository\org\springframework\spring-webmvc\4.0.6.RELEASE\spring-webmvc-4.0.6.RELEASE.jar,D:\work\m2_repository\org\springframework\spring-expression\4.0.6.RELEASE\spring-expression-4.0.6.RELEASE.jar,D:\work\m2_repository\org\springframework\spring-context-support\4.0.6.RELEASE\spring-context-support-4.0.6.RELEASE.jar,D:\work\m2_repository\org\freemarker\freemarker\2.3.20\freemarker-2.3.20.jar,D:\work\m2_repository\commons-logging\commons-logging\1.2\commons-logging-1.2.jar,D:\work\m2_repository\commons-lang\commons-lang\2.6\commons-lang-2.6.jar,D:\work\m2_repository\log4j\log4j\1.2.14\log4j-1.2.14.jar,D:\work\m2_repository\org\mybatis\mybatis\3.2.7\mybatis-3.2.7.jar,D:\work\m2_repository\org\mybatis\mybatis-spring\1.2.2\mybatis-spring-1.2.2.jar,D:\work\m2_repository\mysql\mysql-connector-java\5.1.32\mysql-connector-java-5.1.32.jar,D:\work\m2_repository\org\springframework\spring-tx\4.0.6.RELEASE\spring-tx-4.0.6.RELEASE.jar,D:\work\m2_repository\org\springframework\spring-jdbc\4.0.6.RELEASE\spring-jdbc-4.0.6.RELEASE.jar,D:\work\m2_repository\org\apache\commons\commons-collections4\4.0\commons-collections4-4.0.jar,D:\work\m2_repository\c3p0\c3p0\0.9.1.2\c3p0-0.9.1.2.jar,D:\work\m2_repository\commons-pool\commons-pool\1.6\commons-pool-1.6.jar,D:\work\m2_repository\org\codehaus\jackson\jackson-core-asl\1.9.13\jackson-core-asl-1.9.13.jar,D:\work\m2_repository\org\codehaus\jackson\jackson-mapper-asl\1.9.13\jackson-mapper-asl-1.9.13.jar,D:\work\m2_repository\commons-fileupload\commons-fileupload\1.3.1\commons-fileupload-1.3.1.jar,D:\work\m2_repository\commons-io\commons-io\2.2\commons-io-2.2.jar,D:\work\m2_repository\jstl\jstl\1.2\jstl-1.2.jar,D:\work\m2_repository\commons-codec\commons-codec\1.9\commons-codec-1.9.jar,.]
[ERROR] 致命错误:在类路径或引导类路径中找不到软件包 java.lang
[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

之前认为是jdk版本的问题,但是jdk的环境变量都已配置好,而且我也重装了oracle官方的jdk,仍然报这个错误!
我将项目放到另一个eclipse中编译,仍然报这个错误,因此我猜测可能是pom文件的配置问题,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.mydemo</groupId>
<artifactId>mydemo</artifactId>
<version>1.0</version>
<packaging>war</packaging>
<name>mydemo</name>
<build>
<finalName>mydemo</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
<!-- 解决 maven编译BASE64Encoder及javax.crypto不存在的错误 -->
<compilerArguments>
<verbose />
<bootclasspath>${java.home}/lib/rt.jar,${java.home}/lib/jce.jar</bootclasspath>
</compilerArguments>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy</id>
<phase>install</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>src/main/webapp/WEB-INF/lib/</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<warSourceExcludes>**/*.js,**/*.css</warSourceExcludes>
</configuration>
</plugin>
<!-- YUI Compressor Maven压缩插件 -->
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
<version>1.3.0</version>
<executions>
<execution>
<phase>process-resources</phase>
<goals>
<goal>compress</goal>
</goals>
</execution>
</executions>
<configuration>
<!-- 读取js,css文件采用UTF-8编码 -->
<encoding>UTF-8</encoding>
<jswarn>false</jswarn>
<force>false</force>
<linebreakpos>-1</linebreakpos>
<preProcessAggregates>true</preProcessAggregates>
<nosuffix>true</nosuffix>
<sourceDirectory>src/main/webapp/WEB-INF/jsp</sourceDirectory>
<includes>
<include>**/*.js</include>
<include>**/*.css</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
......后面是一些jar包的配置,就不一一列举了,请各位帮忙看看到底问题出在哪里?ps:java环境变量已配置好,maven的版本是3.2.5
...全文
12664 1 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
小宇哥哥 2017-04-20
同样遇到这个问题,工程中需要用到jdk的包,maven引用不到! 而且,在linux系统中,java_home设置在/etc/profile中,而mvn命令设置在~/.bash_profile中,并且~/.bash_profile中没有设置java_home的环境。导致失败! 解决方案:在~/.bash_profile中设置java_home环境
回复
fightingIOW 2017-04-10
<bootclasspath>${java.home}/lib/rt.jar:${java.home}/lib/jce.jar</bootclasspath> 这个地方,linux和mac使用冒号,windows使用分号
回复
Leolu007 2017-02-28
jave_home不是jdk目录,是jre目录: <java.home>D:/develop/Java/jdk1.8.0_112/jre</java.home> 问题解决了。
回复
shanshan_8774 2016-11-26
楼主这个问题后来解决了吗。现在配置maven编译,遇到一样的问题
回复
冰上浮云 2016-08-16
哥们,你这严重误导啊 正确配置如下: Windows(分隔符英文分号):

<bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar</bootclasspath>
linux(分隔符英文冒号):

<bootclasspath>${java.home}/lib/rt.jar:${java.home}/lib/jce.jar</bootclasspath>
回复
eykron 2015-12-18
<bootclasspath>${java.home}/lib/rt.jar,${java.home}/lib/jce.jar</bootclasspath> 这里写错了,逗号改为分号(window)或者 冒号(linux)
回复
兔子托尼啊 2015-08-26
和你的 <bootclasspath>${java.home}/lib/rt.jar 这个有关系。 jdk版本与maven 版本估计有一个有问题。 其次你的项目有没有设值你运行的jdk 是你下载安装的。
回复
老实的萌新 2015-08-26
没人吗,不用maven直接把jar包放到lib下就没问题......................
回复
兔子托尼啊 2015-08-26
我也不知道。 maven正常的话 ,<bootclasspath>${java.home}/lib/rt.jar,${java.home}/lib/jce.jar</bootclasspath> 这个不需要配置, 你先把用到BASE64Encoder的注释掉然后把 <bootclasspath>${java.home}/lib/rt.jar,${java.home}/lib/jce.jar</bootclasspath>这个删掉看看,项目是不是能够跑的起来。
回复
老实的萌新 2015-08-26
引用 4 楼 rui888 的回复:
[quote=引用 3 楼 guanshanwuxia 的回复:] [quote=引用 2 楼 rui888 的回复:] 和你的 <bootclasspath>${java.home}/lib/rt.jar 这个有关系。 jdk版本与maven 版本估计有一个有问题。 其次你的项目有没有设值你运行的jdk 是你下载安装的。
jdk的版本是oracle官方下的1.6.45 maven版本是3.2.5 我用的eclipse3.7.2,jdk的设置肯定没问题的,关于 <bootclasspath>${java.home}/lib/rt.jar这个配置是为了解决maven编译BASE64Encoder出现的错误 因为sun.misc.BASE64Decoder这个类在maven编译下会报错[/quote] 是的我知道啊。现在的错误就是允许的时候jdk 下面的的rt ,运行的包找不到。[/quote] sun.misc.BASE64Decoder这个包都能找到,却找不到java.lang这个包,他们都是在rt包下的 我完全没有办法了
回复
兔子托尼啊 2015-08-26
引用 3 楼 guanshanwuxia 的回复:
[quote=引用 2 楼 rui888 的回复:] 和你的 <bootclasspath>${java.home}/lib/rt.jar 这个有关系。 jdk版本与maven 版本估计有一个有问题。 其次你的项目有没有设值你运行的jdk 是你下载安装的。
jdk的版本是oracle官方下的1.6.45 maven版本是3.2.5 我用的eclipse3.7.2,jdk的设置肯定没问题的,关于 <bootclasspath>${java.home}/lib/rt.jar这个配置是为了解决maven编译BASE64Encoder出现的错误 因为sun.misc.BASE64Decoder这个类在maven编译下会报错[/quote] 是的我知道啊。现在的错误就是允许的时候jdk 下面的的rt ,运行的包找不到。
回复
老实的萌新 2015-08-26
引用 2 楼 rui888 的回复:
和你的 <bootclasspath>${java.home}/lib/rt.jar 这个有关系。 jdk版本与maven 版本估计有一个有问题。 其次你的项目有没有设值你运行的jdk 是你下载安装的。
jdk的版本是oracle官方下的1.6.45 maven版本是3.2.5 我用的eclipse3.7.2,jdk的设置肯定没问题的,关于 <bootclasspath>${java.home}/lib/rt.jar这个配置是为了解决maven编译BASE64Encoder出现的错误 因为sun.misc.BASE64Decoder这个类在maven编译下会报错
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2015-08-25 09:07
社区公告
暂无公告