小编mrb*_*ela的帖子

JavaFX FXML控制器 - 构造函数与初始化方法

我的Application班级看起来像这样:

public class Test extends Application {

    private static Logger logger = LogManager.getRootLogger();

    @Override
    public void start(Stage primaryStage) throws Exception {

        String resourcePath = "/resources/fxml/MainView.fxml";
        URL location = getClass().getResource(resourcePath);
        FXMLLoader fxmlLoader = new FXMLLoader(location);

        Scene scene = new Scene(fxmlLoader.load(), 500, 500);

        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}
Run Code Online (Sandbox Code Playgroud)

通过先调用默认构造函数然后调用方法,FXMLLoader创建相应控制器的实例(在FXML文件via中给出fx:controller)initialize:

public class MainViewController {

    public MainViewController() {
        System.out.println("first");
    }

    @FXML
    public void initialize() {
        System.out.println("second");
    } …
Run Code Online (Sandbox Code Playgroud)

java javafx

69
推荐指数
3
解决办法
10万
查看次数

Java/Eclipse:"Lambda表达式不能用于评估表达式"

我写了下面的lambda表达式

int size = ((List<?>) receipt.getPositions().stream().filter(item -> true).collect(Collectors.toList())).size()
Run Code Online (Sandbox Code Playgroud)

变量size计算正确!

但是当我尝试检查它(Ctrl+ Shift+ I)或尝试在Eclipse表达式视图中查看表达式的结果时,我收到以下错误:

"Lambda表达式不能用于评估表达式"

在此输入图像描述

有没有其他机会看到这样的表达式的结果而不是将其存储到变量?

PS:我使用的是Java 8和Eclipse neon.2

java eclipse lambda

17
推荐指数
1
解决办法
5995
查看次数

JavaFX - 模块化和非模块化之间的区别

目前我正在阅读JavaFX的“入门”。它区分模块化和非模块化方法。

例如在“JavaFX 和 Eclipse”中:“来自 IDE 的非模块化”和“来自 IDE 的模块化”..

这两个术语有什么区别?

java javafx

15
推荐指数
1
解决办法
4041
查看次数

通过brew安装Maven后,在IntelliJ中获取无效的Maven主目录

我想在 IntelliJ 中设置本地brew安装的 Maven(不使用捆绑的),但总是收到“无效的 Maven 主目录”提示。

Maven 安装在这里:

me@MBP ~ % brew list maven
/opt/homebrew/Cellar/maven/3.8.4/bin/mvn
/opt/homebrew/Cellar/maven/3.8.4/bin/mvnDebug
/opt/homebrew/Cellar/maven/3.8.4/bin/mvnyjp
/opt/homebrew/Cellar/maven/3.8.4/libexec/bin/ (4 files)
/opt/homebrew/Cellar/maven/3.8.4/libexec/boot/ (2 files)
/opt/homebrew/Cellar/maven/3.8.4/libexec/conf/ (3 files)
/opt/homebrew/Cellar/maven/3.8.4/libexec/lib/ (62 files)
Run Code Online (Sandbox Code Playgroud)

当我尝试将此路径设置为 IntelliJ 时,我得到:

Maven 主目录无效

我究竟做错了什么?

编辑

我尝试过类似的路径,但似乎没有任何效果:

无效的 Maven 主目录 2

无效的 Maven 主目录 3

intellij-idea maven

12
推荐指数
2
解决办法
5665
查看次数

QuickFix/J中"组"和"组件"之间的区别

我是FIX世界的新手.我正在编写一个用Java处理FIX消息的应用程序,为此我正在使用QuickFix/J. 我从主页(http://quickfixengine.org/)下载了DataDictionary .我使用的是4.4版

在xml文件中存在组和组件.但是组件可以再次包含组.

它们之间的确切差异是什么?

谢谢你的帮助!!

quickfix fix-protocol quickfixj

11
推荐指数
1
解决办法
2584
查看次数

Maven:_remote.repositories 文件的含义

我试图弄清楚 .repositories 文件的用途。

我刚刚下载了 dsol/dsol-xml/1.6.9,在这个文件夹中有一个“_remote.repositories”文件。它的内容是:

#NOTE: This is an Aether internal implementation file, its format can be changed without prior notice.
#Tue Sep 15 18:16:30 CEST 2015
dsol-xml-1.6.9.jar>simulation=
dsol-xml-1.6.9.pom>simulation=
Run Code Online (Sandbox Code Playgroud)

这是什么意思?!

谢谢你的帮助!

java maven

11
推荐指数
1
解决办法
7284
查看次数

如何在Java中使用PrintStream时找出发生的异常

我刚刚读过,在Java中的类PrintStream,PrintWriter并没有抛出已检查的异常.相反,他们使用一种错误标志,我可以读取调用方法boolean checkError()(API链接).

现在,我问自己如何找出异常发生的原因.有异常的信息有时可能不够,或者?

java printstream printwriter

9
推荐指数
1
解决办法
67
查看次数

如何在 Eclipse 2020-09 中使用 Java 版本 15

我正在尝试在 Eclipse 2020-09 下运行新的 Java 15 功能。

我已经安装了 OpenJDK 15 并将其设置在“已安装的 JRE”下:

已安装的 jres

尽管如此,我无法将此版本设置为编译器版本(仅到版本 14):

编译器级别

我究竟做错了什么?

java eclipse java-15

9
推荐指数
1
解决办法
4418
查看次数

SceneBuilder中的JavaFX ToggleGroup

在JavaFX中存在控件ToggleGroup.我安装了SceneBuilder,版本:

Product Version
JavaFX Scene Builder 8.0.0

Build Information
Version 8.0.0
Date: 2015-03-25
Java Version: 1.8.0_40-b25, Oracle Corporation
Run Code Online (Sandbox Code Playgroud)

我找不到这个控件SceneBuilder:

截图场景制作者

你能帮助我吗?

谢谢你的帮助!

javafx scenebuilder

7
推荐指数
2
解决办法
1万
查看次数

如何减少 Java 中的 Futures 流?

假设我已经给出了一个Streamof Futures,我想通过调用该Stream#reduce方法来减少它。但我不想减少Futures本身,而是减少Future( Future#get)的结果。问题是,在这种情况下,get 方法可能会抛出一个ExecutionException并且不提供结果。

这就是为什么

Stream<Future<Integer>> stream = ...;
BinaryOperator<Integer> sum = (i1, i2) -> i1 + i2;  
stream.map(future -> future.get())
      .reduce(sum); // does not work, get needs to handle exceptions!
Run Code Online (Sandbox Code Playgroud)

所以,我必须捕捉异常:

stream.map(future -> {
    Integer i = null;
    try {
        i = future.get();
    } catch (InterruptedException e) {
    } catch (ExecutionException e) {}
    return i;
}).reduce(sum); 
Run Code Online (Sandbox Code Playgroud)

但是在这种方法中,我可能会遇到麻烦,因为null可能会出现值。

所以,为了摆脱这些,我必须过滤掉那些ExecutionException出现的:

stream.filter(future -> { …
Run Code Online (Sandbox Code Playgroud)

java reduce java-stream

7
推荐指数
1
解决办法
573
查看次数