Tag: 兼容性

Java 8不兼容的类型

这是简单的代码 import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.Map; public class SimpleTest { public static void main(String[] args) { final ArrayList<Map> maps = newArrayList( createMap(“1”, “a”, Collections.EMPTY_MAP, Collections.EMPTY_MAP), createMap(“2”, “b”, Collections.EMPTY_MAP, Collections.EMPTY_MAP), createMap(“3”, “c”, Collections.EMPTY_MAP, Collections.EMPTY_MAP) ); System.out.println(” maps = ” + maps); } public static Map createMap(String value1, String value2, Map object1, Map object2) […]

我们可以使用jdk7 javac将java7特性的代码编译成java6字节码

我正在考虑一个java项目是否可以生成2个jar:一个用于java7,一个用于java6,是的,源代码可能会使用一些java7新function。 所以要生成java6 jar,命令行就像: javac -target 1.6 -bootclasspath jdk1.6.0\lib\rt.jar -extdirs “” MyApp.java 不幸的是,它只是发出一个错误: javac: target release 1.6 conflicts with default source release 1.7 根据这个文件 ,应该有可能jdk6 vs jdk5,任何人都知道为什么它在jdk7 vs jdk6中不起作用? 我做错了什么,还是只是官方不支持? 谢谢。

对象到XML,向后和向前兼容性

我正在一个应用程序中工作,我们需要以XML格式保存对象,并在需要时稍后加载它们。 为此,我使用JAXB来编组和解组XML到Java类。 我的问题是我必须在某个时候更改Java模型(通过添加,重命名或删除属性),因此,我将拥有不兼容的已保存的XML,这些XML无法绑定到新的类表单。 为了解决这个问题,每次我必须进行更改时,我会在新软件包(以其版本命名)下获取所有类的副本并应用所请求的更改。 在保存XML时,我保存了它的版本,以便我可以决定JAXB应该扫描哪个包来解组这个XML。 我的问题是,有没有其他方法可以使用JAXB实现向后和向前兼容性? 如果没有,是否有任何其他技术可以支持这个?

在API 21上可以使用finishAndRemoveTask()

我会终止我的应用程序并从最近的任务列表中取消它。 finishAndRemoveTask()仅在API 21上可用。 我应该在低于21的API上使用什么?

检测API变化/演变

我想测量给定Java项目的API演变,特别是新的/重命名的类,新方法,新弃用的方法等。是否有工具可以检测到这些变化? 早在2007年, Google GSoc项目就已启动,但是,我无法找到最终的工作。

Java SE 8:Java 7编译的JAR是否与Java 8完全兼容?

我在Java 7中编译了旧的JAR文件,我的生产环境中有Java 8.在将JAR文件直接部署到Java 8环境中需要注意什么? 我测试在Java 8上运行它们并且它工作正常。 我可以遇到任何问题或者我应该没事吗? 我想知道这是因为我在辩论删除Java 8并安装Java 7。 编辑:一个侧面问题:公司在更新Java版本时是否更新了代码? 我无法想象这必须是多么痛苦,所以你的应用程序在以前的版本上工作,然后在新版本上完全失败。

JDK,JRE兼容JAR

我对JDK和JRE源代码和二进制兼容性(例如this和this )有所了解,但不确定以下情况: 考虑我有一个使用JDK5编译并在JRE6上运行的应用程序。 它使用一些库(jar),它们也使用JDK5编译。 现在我想使用JDK6编译我的应用程序。 在这种情况下运行时会出现什么新问题(特别是与“旧”jar子的兼容性)? 我应该完全重新测试应用程序(触摸每个库)还是可以依赖于承诺的JDK / JRE兼容性?

什么版本的JaspeReports支持Java 8?

我一直在寻找相当一段时间来阅读关于此事的“官方声明”,但没有找到。 因此,有人可以指出一个参考或指向一些新闻吗? 什么版本的JasperReports支持Java 8,或者至少有部分支持? (或者是“反复试验”?) Jasper社区论坛上的一些post似乎表明iReport和JasperReports Server尚未提供Java 8支持。 另一方面,我看到它有一些迹象,至少在某种程度上( http://community.jaspersoft.com/jasperreports-server/issues/3498 )。 这有点令人困惑。 更新请参阅下面的Teodor Danciu的答案,了解当前状态。

sun.misc.Signal的替代品

我开始研究找到sun.misc.Signal类的替代方法,因为它可能在即将到来的JDK中不受支持(我们目前正在研究1.6)。 当我构建项目时,我得到: 警告:sun.misc.SignalHandler是Sun专有API,可能会在将来的版本中删除 我遇到了多种解决方案,但它们不适合我的项目,例如在这个问题中 。 这在我的情况下是不可接受的,因为: 信号不仅用于杀死应用程序 应用程序非常庞大 – 模块/ JVM之间的每次通信概念变化都需要数年时间才能实现 因此,理想的解决方案是找到像这个类的新Oracle版本或者以相同方式工作的东西。 这样的解决方案是否存在?

使用C#进行AES加密和使用Java进行解密

我只想确认我对AES如何工作的理解。 如果公司#1正在加密数据,并将此数据发送到公司#2进行解密,那么我们假设其中一个使用C#和另一个Java。 只要两者都使用相同的共享密钥,是否有任何其他设置/配置明智的双方应该同意确保数据正确加密和解​​密?