我最近将一个现有的 java 项目从 java 1.4 升级到 1.6,但由于错误而无法编译: com.sun.crypto.provider 包不存在。
我意识到我缺少一个库,但我不知道要下载哪个库或在哪里下载它?
com.sun.crypto.provider
是 Sun Java Cryptography Extension (JCE),为 Java 1.3(我认为)引入以绕过美国政府的疯狂出口法规。不过,JCE 是非标准的(所有com.sun
包也是如此),并且它们在 Java 的更高版本中被重命名/重构,这些版本具有“适当的”加密包 ( javax.crypto
)。
因此,如果不进行修改,您的应用程序将无法在 Java6 上运行,将 JCE 引用更改为新的标准包。
与其下载库,不如修改应用程序,使其不依赖于不属于公共 API 的库。未来的升级将不需要进一步的努力。