java-9相关内容
我正在尝试创建一个模块化的可执行JAR文件,该文件可以在Java 9.0.1上使用java -p -m 运行。 使用jar cfe test.jar test.Main -C classes/ .创建JAR时,这会正常工作,但在使用mvn package和mvn assembly:single生成JAR时,会抛出module test does not
..
Eclipse必须允许这样做,因为来自JDK的javac允许这样做,而不需要我联系CIA以获得批准。如果ECLIPSE不允许这样做,那么其他Java IDE会允许我这样做吗?最糟糕的情况是,我将只使用emacs和终端。 屏幕截图: 推荐答案 大部分相关信息已经在评论中给出,我主要是用一些背景和一些链接进行总结: 首先,Eclipse不接受源文件夹中名为java.base的文件夹
..
一个例子:自从从JDK中删除了JavaFX,现在JavaFX SDK以一组模块化JAR的形式分发。要编译一个JavaFX应用程序,当然必须将它们放在模块路径上: javac -p /path/to/jars/ App.java 然而,这还不够。尝试编译将导致许多类似 的错误 sample/App.java:3: error: package javafx.application is
..
我正在开发一个面向JDK 8的Java库,我正在使用OpenJDK 11在Gradle 5中构建它。为了面向JDK 8,我是javac的--release选项。 但是,我也希望我的库与JPMS兼容。换句话说: 我想提供一个用--release 9(Stephen Colebourne's scale中的选项3)编译的module-info.class, 而其余所有内容都是用--relea
..
使用许多新方法扩展了java.util.Objects类 Objects#requireNonNullElse 分别 Java-9中的Objects#requireNonNullElseGet()。 如果第一个参数为非空,则两者都将返回第一个参数,否则将返回第二个非空参数或Supplier.get()的非空值 jshell> String nullStr = null
..
我有一个例外,如java.lang.reflect.InaccessibleObjectException:Unable to Make jdk.internal.loader.ClassLoaders$AppClassLoader(jdk.internal.loader.ClassLoaders$PlatformClassLoader,(jdk.inder.loader.URLClassPath
..
我们从Java 9的发行说明中了解到 应用程序类加载器不再是java.net.URLClassLoader的实例(这是以前版本中从未指定的实现细节)。假定ClassLoader::getSytemClassLoader返回URLClassLoader对象的代码将需要更新。 这打破了旧代码,旧代码按如下方式扫描类路径: Java<;=8 URL[] ressources
..
我有一个OSGI应用程序,我有大约30个包(JAR文件)。今天,我决定看看它是如何工作的/是否与Java9一起工作。 所以我启动了我的应用程序并获得了 WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.apache.felix.fr
..
我只是尝试运行此代码: import com.sun.rowset.CachedRowSetImpl; public class Test { public static void main(String[] args) throws Exception{ CachedRowSetImpl crs = new CachedRowSetImpl(); } }
..
..
我创建了一个具有以下结构的多模块项目 我的项目|- 我的模块|- 源|- 主要|- 爪哇|- com|- 我的模块|- 实用程序.java|-新模块|-src|-主要|-java|-com|-新模块|- 主.java|-模块信息.java 现在我想使用 Util.java,它是模块化模块 newmodule 中的非模块化代码.我已经在 newmodule 中声明了以下内容 模块新模块{需要
..
自从 java-9 调用 Collectors.flatMapping 作为分组或分区的下游发生.例如(示例取自 here): 列表>列表 = Arrays.asList(Arrays.asList(1, 2, 3, 4, 5, 6),Arrays.asList(7, 8, 9, 10));映射>地图 =list.stream().collect(Collect
..
一个乍一看并不简单的关于拆分器的问题. 在流中,.parallel() 改变流处理的行为.但是,我期望从顺序流和并行流创建的拆分器是相同的.例如,通常在顺序流中,从不调用 .trySplit(),而在并行流中,它是为了将拆分拆分器移交给另一个线程. stream.spliterator() 与 stream.parallel().spliterator() 的区别: 他们可能有不
..
我在解决 欧拉计划.问题如下: 彼得有九个四面(金字塔形)骰子,每个骰子的面编号为 1、2、3、4.Colin 有六个六面(立方)骰子,每个骰子的面编号为 1、2、3、4、5、6. Peter 和 Colin 掷骰子并比较总分:总分最高的获胜.如果总分相等,则为平局. 金字塔皮特击败立方科林的概率是多少?以 0.abcdefg 的形式给出你的答案,四舍五入到小数点后七位 我
..
如何先分组,然后使用 Java 流应用过滤? 示例:考虑这个 Employee 类:我想按部门分组,列出工资大于 2000 的员工. 公共类员工{私人弦乐部门;私人整数工资;私有字符串名称;//getter 和 setter公共雇员(字符串部门,整数工资,字符串名称){this.department = 部门;this.salary = 薪水;this.name = 名称;}} 我可以这
..
我们使用 maven 并拥有依赖于其他内部工件的工件.我正在迁移到 java-9,并打算首先将所有内容迁移到 Java 9 而不模块化代码(即在未命名的模块中). 我遇到的问题是我们依赖于 java.xml.bind,它现在不包含在默认模块中.是否有一种“正确"的方式来表达对 java.xml.bind 的这种依赖关系? 解决方案 模块系统会说话在您从类路径加载应用程序的情况下,未命
..
这个问题实际上是双重的: 能否使用 SonarQube分析 Java9 项目? SonarQube 本身能否在 Java9 JVM 上运行? Java8 的同样问题 解决方案 TL;DR: YES!!!它支持分析,显然自 2017 年 7 月 3 日起(但他们拼命试图隐瞒事实......) 截至目前(2017 年 10 月 24 日,SonarQube 版本 6.6),
..
在 Java 9 中,在 Set 接口上引入了新的静态工厂方法,称为 of(),它接受多个元素,甚至是一个元素数组. 我想将一个列表变成一个集合以删除集合中的任何重复条目,这可以使用以下方法完成(在 Java 9 之前): 设置set = new HashSet();set.addAll(列表); 但我认为使用这种新的 Java 9 静态工厂方法会很酷: Set.of(list.t
..
为了能够将我的 Eclipse 插件“treezCore"也用作 Java9 模块,我在我的 src 文件夹中创建了一个 module-info.java. 此外,我将插件依赖项从类路径移至模块路径.我可以在插件依赖项中看到一个模块“org.eclipse.swt.3.106.1.v20170926": 但是,我无法在我的 module-info.java 中引用该模块.我试过了 需
..
JEP 192:G1 中的字符串重复数据删除 在 Java 8 中实现更新 20 添加了新的字符串重复数据删除功能: 通过增强 G1 垃圾收集器减少 Java 堆实时数据集,以便自动连续删除重复的 String 实例. JEP 页面提到命令行选项 UseStringDeduplication (bool) 允许启用或禁用去重功能.但是 JEP 页面并没有指示默认值. ➠ 在与 J
..