以下命令曾经完美地工作:
C:\tools\apache-cxf-3.3.1\bin\wsdl2java -client -d generated foo.wsdl
Run Code Online (Sandbox Code Playgroud)
它不再适用于最新版本的 JDK - 12。我已经下载了最新版本的 Apache CXF,但仍然遇到相同的错误:
-Djava.endorsed.dirs=C:\tools\apache-cxf-3.3.1\bin\..\lib\endorsed is not supported. Endorsed standards and standalone APIs
in modular form will be supported via the concept of upgradeable modules.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Run Code Online (Sandbox Code Playgroud)
谁能提供有关如何解决此问题的提示?
我尝试在 IntelliJ 中使用 Java 12,但是当我尝试运行我的应用程序时出现错误
Error:(57, 32) java: switch expressions are a preview feature and are disabled by default.
(use --enable-preview to enable switch expressions)
Run Code Online (Sandbox Code Playgroud)
我在应用程序配置 VM 选项中添加了 --enable-preview 但仍然出现此错误。我添加了 SDK 路径。任何人都知道我做错了什么?
List<Car> sortedCars = switch (sortType) {
case COLOR -> cars.stream().sorted(Comparator.comparing(Car::getColor)).collect(Collectors.toList());
case MILEAGE -> cars.stream().sorted(Comparator.comparing(Car::getMileage)).collect(Collectors.toList());
case MODEL -> cars.stream().sorted(Comparator.comparing(Car::getModel)).collect(Collectors.toList());
case PRICE -> cars.stream().sorted(Comparator.comparing(Car::getPrice)).collect(Collectors.toList());
};
Run Code Online (Sandbox Code Playgroud) java intellij-idea switch-statement java-12 switch-expression
这不是真正的错误,但是当我检查运行时版本时,它提供了以下内容,这是否表示我做错了什么?
jshell> Runtime.version()
$3 ==> 12.0.1+12
Run Code Online (Sandbox Code Playgroud) 这个问题与使用 Java 反射更改私有静态最终字段密切相关。在那里,有人问,如何改变一个private static final变量。
但是,该问题的答案在 Java 12+ 中不起作用,因为您无法访问java.lang.reflect.Field使用反射的私有变量。
尽管如此,当您尝试这样做时,您最终会得到如下堆栈跟踪:
Exception java.lang.NoSuchFieldException: modifiers
at Class.getDeclaredField (Class.java:2412)
at <your call of Field.class.getDeclaredField("modifiers").setAccessible(true)>
Run Code Online (Sandbox Code Playgroud)
有没有办法在这些版本中更改这样的常量?
我可以想象使用 JNI/JNA 是可能的。
这是一个细微但值得注意的区别:
$ for j in {5..12}; do . chjdk $j; time (java -version; for i in {1..1000}; do java x >/dev/null; done); echo ""; done
java version "1.5.0_22"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_22-b03)
Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_22-b03, mixed mode)
real 2m4.988s
user 0m59.832s
sys 0m18.856s
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)
real 0m28.055s
user 0m24.012s
sys 0m4.216s
java version "1.7.0_80"
Java(TM) SE …Run Code Online (Sandbox Code Playgroud) 我正在将应用程序从jdk 8迁移到11,我可以看到ZonedDateTime更改是关于夏时制的行为。JDK8
ZonedDateTime parse = ZonedDateTime.parse("2037-05-10T19:15:00.000+01:00[Europe/Paris]");
System.out.println(parse);
Run Code Online (Sandbox Code Playgroud)
输出:2037-05-10T19:15 + 02:00 [Europe / Paris]
JDK11 / 12
ZonedDateTime parse = ZonedDateTime.parse("2037-05-10T19:15:00.000+01:00[Europe/Paris]");
System.out.println(parse);
Run Code Online (Sandbox Code Playgroud)
2037-05-10T20:15 + 02:00 [欧洲/巴黎]
有人可以向我解释为什么他们会改变这种行为吗?
最好的祝福,
ErrorOccuredDuringInitializationofbootlayer我在运行测试时不断收到此错误:
启动层初始化时出错 java.lang.module.FindException:无法为 C:\Users\Bonfire.eclipse\org.eclipse.platform_4.12.0_867647348_win32_win32_x86_64\plugins\com.beust.jcommander_1.72.0.jar 派生模块描述符引起:java.lang.IllegalArgumentException:com.beust.jcommander.1.72.0:无效的模块名称:'1'不是Java标识符
我该如何解决?
在什么情况下将someEnum.describeConstable()无法返回EnumDesc?
即它将返回一个空Optional。
我是Java(和一般编程)的新手,正在通过将基本电子表格转换为javafx应用程序来学习。为此,我正在使用:Java和JavaFX 12 FXML和Scenebuilder for GUI
大约有10个输入字段,它们不能为空(应用程序崩溃,因为getText似乎在空白字段上失败)。
我编写了堆叠的if语句来检查空白字段,然后打印错误消息(如果有的话),并返回以停止该过程而不会崩溃该应用程序。
switch语句似乎没有if语句更好。
有没有办法用更少的代码行做到这一点?
package SteelDesign_BoltedConnection;
import javafx.fxml.FXML;
import javafx.scene.control.TextField;
import javafx.scene.control.DatePicker;
import javafx.scene.control.TextArea;
import javafx.event.ActionEvent;
public class mainController {
//Header details
@FXML private TextField refNo;
@FXML private TextField jobDesc;
@FXML private TextField author;
@FXML private DatePicker date;
//Design data
@FXML private TextField desShear;
@FXML private TextField boltSize;
@FXML private TextField boltGrade;
@FXML private TextField tensStrengthBolt;
@FXML private TextField noBolts;
@FXML private TextField shearPlanes;
@FXML private TextField edgeDist;
@FXML private TextField plyThick;
@FXML private TextField …Run Code Online (Sandbox Code Playgroud) 我想在Macbook Pro上卸载Java版本12.0.1。
我已经安装了Java 12.0.1,但是我的日食Kepler版本不支持它。
我已经在终端中通过一些命令尝试过,但是都不能锻炼。
有人可以帮我卸载Java 12吗?
我找不到要安装的Java 12,只有Java13。但是Gradle还不支持Java 13,因此我现在需要使用12作为替代。当我使用Homebrew brew search java查找时,会发现各种Java:Java 11,Java 6(!)和Java,它们以前是Java 12,现在是Java 13。
知道如何获得Java 12吗?