Intellij IDEA无法导入Gradle项目 - “无法初始化类javax.crypto.SunJCE_b”

时间:2015-03-19 05:09:50

标签: java intellij-idea gradle

我正在参与Gradle项目。当我执行gradle run时,项目会下载依赖项并且运行得非常好。这是我的build.gradle文件:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'application'

mainClassName = 'myProject.MyMainClass'

repositories {
    mavenCentral()
}

dependencies {
    // The production code uses the SLF4J logging API at compile time
    compile 'org.slf4j:slf4j-api:1.7.7'
    compile 'org.jsoup:jsoup:1.7.2'

    testCompile "junit:junit:4.11"
}

jar {
    baseName = 'myproject-service'
    version = '0.1.0'
}

task wrapper(type: Wrapper) {
    gradleVersion = '1.11'
}

现在我想在Intellij IDEA中导入项目。

  

导入Gradle项目>>使用默认gradle包装器(推荐)>>行

但是,当我点击OK时会出现一个对话:

  

无法初始化类javax.crypto.SunJCE_b

查看日志,它说

org.gradle.tooling.GradleConnectionException: Could not run build action using Gradle distribution 'https://services.gradle.org/distributions/gradle-2.3-bin.zip'.
...
Caused by: java.lang.NoClassDefFoundError: Could not initialize class javax.crypto.SunJCE_b
    at javax.crypto.KeyGenerator.a(DashoA13*..)
...
2015-03-18 21:31:17,751 [2354198]   WARN - nal.AbstractExternalSystemTask - Could not initialize class javax.crypto.SunJCE_b 
com.intellij.openapi.externalSystem.model.ExternalSystemException: Could not initialize class javax.crypto.SunJCE_b
    at org.jetbrains.plugins.gradle.service.project.AbstractProjectImportErrorHandler.createUserFriendlyError(AbstractProjectImportErrorHandler.java:106)
...

我不知道如何让这个项目发挥作用。如果没有这个,我从外部存储库导入的任何内容都不能在IDEA中运行(它们都显示为红色)。任何帮助,将不胜感激。我在:

  • Intellij IDEA 13.1.6
  • Java EE 7(jdk1.7.0_75.jdk)
  • Gradle 2.3
  • Mac OS X

1 个答案:

答案 0 :(得分:1)

<强> SOLUTION:

仍然不知道问题是什么。我尝试了我在网上找到的所有建议以及我能想到的一切:安装不同版本的java,安装不同的IDEA,尝试使用原始加密策略文件,尝试使用无限强度策略文件等等。这些都不起作用。

然而,有效的是选择“使用本地gradle分发”,而不是使用默认包装器。我通过运行which gradle找到了我的gradle安装路径(/usr/local/gradle-2.3)(它将为您提供可执行文件的路径,即/usr/local/gradle-2.3/bin/gradle) ,但我刚拿了目录部分)。现在我可以使用gradle构建!!

我最好的猜测是gradle插件安装了一些其他没有为我的项目正确设置的gradle分发。

我希望这对任何在Intellij IDEA中使用gradle的人都有帮助。