小编Eos*_*gen的帖子

这个for循环可以转换为IntStream吗?

是否有任何方法可以将以下for循环转换为使用IntStream

for (int i =1; i<=5; i++)
{
   nums.add(n.nextInt(45)+1);
}
Run Code Online (Sandbox Code Playgroud)

我非常简单地尝试了以下内容:

IntStream.range(1,5).forEach(nums.add(n.nextInt(45)+1));
Run Code Online (Sandbox Code Playgroud)

但它输出以下错误:

不兼容的类型:boolean不能转换为IntConsumer IntStream.range(1,5).forEach(nums.add(n.nextInt(45)+1));

java java-8

5
推荐指数
1
解决办法
292
查看次数

错误:缺少 JavaFX 运行时组件,并且需要使用 Gradle 示例来运行此应用程序

我知道这个问题已被问过多次......但我似乎找不到解决方案。

取自这个官方指南示例: https: //openjfx.io/openjfx-docs/#gradle 我继续并添加到我的build.gradle中:

plugins {
    id 'application'
    id 'org.openjfx.javafxplugin' version '0.0.8'
}

javafx {
    version = '13'
    modules = ['javafx.controls']
}

repositories {
    mavenCentral()
}

mainClassName = "MyImage"

jar {
    manifest {
        attributes "Main-Class": "$mainClassName"
    }
    from {
        configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
    }
}
Run Code Online (Sandbox Code Playgroud)

通过运行gradle jar(或gradle build),实际上应该生成一个 jar,其中应包含构建它所用的所有包,即整个 javafx 库。

但是,当它成功构建后,我继续运行:

java -jar build/libs/MyImage.jar

它仍然抛出错误:

Error: JavaFX runtime components are missing, and are required to run this application …

javafx gradle

3
推荐指数
1
解决办法
963
查看次数

标签 统计

gradle ×1

java ×1

java-8 ×1

javafx ×1