在哪里/如何获得Java 1.8.0_144想要的MSVC dll?

时间:2018-04-03 10:47:50

标签: java visual-c++ dll

我正在尝试使用Java 1.8.0_144构建我的应用程序以解决方法an issue that apparently started after that。我运行此命令来构建:

gradle jfxNative -Dorg.gradle.java.home="c:\Program Files\Java\jdk1.8.0_144"

它会因此错误而停止:

Execution failed for task ':jfxNative'.
> Not found MSVC dlls

我在哪里以及如何获得这些MSVC dll?

完整输出如下所示:

c:\...\>gradle jfxNative -Dorg.gradle.java.home="c:\Program Files\Java\jdk1.8.0_144"

> Task :jfxNative 
The jar lib\lombok-1.16.18.jar has a main class lombok.launch.Main that does not match the declared main tech.dashman.dashman.ConfiguratorApp
The jar lib\jna-4.5.0.jar has a main class com.sun.jna.Native that does not match the declared main tech.dashman.dashman.ConfiguratorApp
The jar lib\javassist-3.22.0-CR2.jar has a main class javassist.CtClass that does not match the declared main tech.dashman.dashman.ConfiguratorApp


FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':jfxNative'.
> Not found MSVC dlls

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 8s
5 actionable tasks: 2 executed, 3 up-to-date

我当前的依赖项列表如下所示:

dependencies {
    compile "tech.dashman:dashmancommon:1.0.0-SNAPSHOT"
    compile "org.projectlombok:lombok:1.16.18"
    compile "org.springframework:spring-web:5.0.2.RELEASE"
    compile "org.springframework.retry:spring-retry:1.2.2.RELEASE"
    compile "com.fasterxml.jackson.core:jackson-databind:2.9.3"
    compile "org.kordamp.ikonli:ikonli-javafx:2.1.0"
    compile "org.kordamp.ikonli:ikonli-fontawesome5-pack:2.1.1"
    compile "net.harawata:appdirs:1.0.1"
    compile "io.sentry:sentry:1.6.4"
    compile "org.javassist:javassist:3.22.0-CR2"
    testCompile "junit:junit:4.12"
}

我尝试添加

compile "net.java.dev.jna:jna-platform:4.5.1"

到该列表但我在尝试构建安装程序时仍然遇到相同的错误。

将其添加到我的buildscript dependencies并未更改错误:

buildscript {
    repositories {
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath "de.dynamicfiles.projects.gradle.plugins:javafx-gradle-plugin:8.8.2"
        classpath "com.github.ben-manes:gradle-versions-plugin:0.17.0"
        classpath "de.dynamicfiles.projects.javafx.bundler:custom-file-extension-windows-bundler:1.0.2-SNAPSHOT"
        classpath "net.java.dev.jna:jna-platform:4.5.1"
    }
}

1 个答案:

答案 0 :(得分:0)

您需要安装Microsoft Visual C++ redistribute package

在任何情况下,这是使用Visual Studio 17从源代码构建JNA的更好解决方案,它使用通用CRT,因此您无需要求用户安装它,因为它已由Windows更新服务安装