【发布时间】:2016-05-25 09:08:46
【问题描述】:
我有 bccapi-1.2.0.jar 文件,我想在 linux 服务器上运行,但由于它的编译版本,它无法运行。
jar文件的编译版本是jdk1.7,我从URL下载的:http://www.antepedia.com/detail/p/bccapi.html
服务器的jdk是jdk1.5。那么如何使用 jdk1.5 环境重新编译现有的 jar。 当我试图运行它时,它会给出这样的错误
java.lang.UnsupportedClassVersionError:.class 中的版本号错误 文件(无法加载类 com.lambdaworks.crypto.SCryptUtil) org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2858) org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1159) org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647) org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526) java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) com.elitecore.activation.utilities.CryptUtilities.validateScryptPassword(CryptUtilities.java:135) inventory.Application.CUsers.getUserBeanByNameandPassword(CUsers.java:131) inventory.modes.ChkLogin.process(ChkLogin.java:55) 库存.servlet.UserServlet.doPost(UserServlet.java:62) javax.servlet.http.HttpServlet.service(HttpServlet.java:643)
当我在服务器上执行 jar 文件时发生此错误。
【问题讨论】:
-
是否不可能更新您的服务器以拥有过去十年发布的 JRE?
-
如果你下载的jar是用jdk1.7编译的,它可能使用了jdk1.5中不存在的特定功能。恐怕您必须将服务器上的 jre 升级到 1.7
-
感谢您的回复,但现在不可能,因为整个项目及其依赖项都在那里。所以如果我这样做,那么可能会出现很多问题。