我有一个较旧的项目,使用sun.net.ftp.FtpClient该类从ftp服务器下载文件.看起来Oracle最终从Java中删除了这个不受支持/弃用的功能.关于应该用什么来取代它的任何建议?我正在考虑org.apache上课,但我从未使用过它们.最好的解决方案是最简单的.
我找不到任何有关-server在启动sun HotSpot JVM时传递选项的确切效果的明确文档.
任何人都可以总结它的作用吗?
我实际上正在开发一个Java小程序来访问HSM以便对数据进行签名.
所以我使用了很多Sun软件包(PKCS11包装器和sunPKCS11提供程序).
我看到了这个链接:http://www.oracle.com/technetwork/java/faq-sun-packages-142232.html告诉我们不鼓励使用sun包.
但我想确定原因.我实际上是在Java 1.6 x86 JDK中编译我的代码.
最新用户在更新Java版本时是否有可能无法使用我的应用程序?或者只有在我更改JDK以编译代码时才会出现问题?还是这两种情况?
提前感谢您的澄清.
我正在将项目移至Java11
我已经改变了sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl与java.lang.reflect.ParameterizedType(作为指定在这里),现在之交MalformedByteSequenceException:
警告:MalformedByteSequenceException是内部专有API,可以在以后的版本导入com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException中删除。
它被用于从XML文件创建对象的一小段代码中。更确切地说是try-catch。
try {
...
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(stream);
NodeList list = document.getChildNodes();
fillProcessStack(document);
...
list = list.item(0).getChildNodes();
createItems(list, parent);
} catch (MalformedByteSequenceException e) {
//"Any char in your xml file has a wrong format: " + e.getLocalizedMessage()
} catch (SAXParseException sax) {
...
} catch (Exception e) {
...
}
Run Code Online (Sandbox Code Playgroud)
无论如何,我在网上找不到任何关于此的信息。
我能想到的最接近的是UnsupportedEncodingException,但我不确定。
另外,这可能是从网络复制的一些旧代码的遗留物,并且显然,如果我删除它,则对于编译器来说一切看起来仍然很好。
那么,关于Java11是否有任何一般/好的建议?
编辑:对于寻求关闭此问题的人,因为
寻求调试帮助的问题(“此代码为什么不起作用?”)必须包括所需的行为,特定的问题或错误以及在问题本身中再现该错误所需的最短代码。没有明确问题陈述的问题对其他读者没有用。请参阅:如何创建最小的,可复制的示例。
我会尝试更清楚地解释。 …