使用jdk工具tools.jar引发的问题

这里tips下这个问题

之前本地开发机使用jdk7进行开发和测试,因为程序中需要动态编译java类,所以使用了tools.jar里面的编译工具,但是这个程序使用jdk7编译后部署到jdk6的生产环境一直抱找不到tools.jar,所以非常奇怪,翻了下源码(jdk7),tools.jar加载位置就在jdk的lib中,生产环境的jdk6 lib目录下也有这个jar包,难道jdk版本不匹配的话会使用jre运行?带着这个问题,把tools.jar拷贝到了jre下面的lib包下,但依然找不到jar包,想到以前开发web程序在jdk6的环境下会拷贝sevlet.jar到ext包下,所以尝试把tools.jar放到了jre的ext目录下,问题解决。

这里有一个点仍然比较疑惑,使用jdk6编译,放在jdk6的生产环境中就没问题,但是使用jdk7编译就不行,使用的是jre运行。jdk版本不同的情况下,会有这种情况么?

猜你喜欢

转载自bucketli.iteye.com/blog/2204909