java - 我正在尝试更改 IntelliJ 的 IDE,但它始终运行错误的版本

标签 java gradle intellij-idea

我有一门软件工程类(class),我们有一个销售系统的 gradle 项目。它需要java 8才能运行,我已经安装在我的电脑上。我还有 java 9,除了该类之外,我还用它来处理其他任何事情。

我有一个非常繁琐的问题,我似乎无法解决:我似乎无法让 intelliJ 使用 java 8。

我尝试过以下操作:

文件 - 项目结构

在“项目”下 - Java 8

在“模块”下 - 一切都设置为使用 Project SDK (1.8)

在“SDK”下 - 我只有“1.8”

Ctrl + Shift + A ->“切换 IDE 启动 JDK...”

我有 3 个选择:

  1. 1.8.0_152 java (b16) [启动]
  2. 1.8.0_152 openjdk (release-1024-b11)[捆绑]
  3. 1.8.0_181 java (b13)

我已经尝试了所有这些,但仍然一无所获。

当我打开项目时,它说

C:\Program Files\Java\jdk1.8.0_181\bin\java...

在下面的“运行”选项卡中。但是,当我输入

java -version

进入“终端”选项卡,它显示

java version "9.0.4"
Java(TM) SE Runtime Environment (build 9.0.4+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.4+11, mixed mode)

当我尝试执行任何gradlew命令时,例如hsqlrun

我收到此错误:

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '9.0.4'.

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

我尝试运行我们的主 gradle.build 文件,并且在尝试这些命令之前不运行它,但这没有什么区别。我们的 build.gradle 文件,如果有帮助的话:

apply plugin: 'java'
apply plugin: 'application'

repositories {
    mavenCentral()
}

version = '1.0'

dependencies {
    compile project(':')
    compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.6.2'
    compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.6.2'
}

mainClassName = 'ee.ut.math.tvt.salessystem.ui.SalesSystemUI'

jar {
    doFirst {
        manifest {
            if (!configurations.runtime.isEmpty()) {
                attributes('Class-Path': configurations.runtime.collect{it.toURI().toString()}.join(' '))
            }
        }
    }
    manifest {
        attributes 'Implementation-Title': 'Gradle Quickstart',
                   'Implementation-Version': version,
                   'Main-Class': mainClassName
    }
}

我的其他团队成员似乎没有问题并且可以很好地运行。任何帮助将非常感激。

最佳答案

我认为你必须指定 Gradle 才能使用你想要的 JVM。

转到设置->构建、执行、部署->Gradle->Gradle JVM并选择您想要的JDK。 (在此线程中指出:https://stackoverflow.com/a/43624456/2799066)

据我所知,在将项目导入到 idea 时,也可以配置 JVM 和命令行参数。

关于java - 我正在尝试更改 IntelliJ 的 IDE,但它始终运行错误的版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53400143/

相关文章:

java - 在 Intellij IDE 中导入 Maven 项目后,所有 java 选项都丢失

java - 如何使用 Java 代码找出访问我的 Ubuntu 计算机的 WLAN 接口(interface)的 PC 的 IP 地址?

intellij-idea - 如何在IntelliJ中更改默认的Gradle包装器和构建文件?

构建另一个时 Gradle 跳过模块

android - 我无法在Android Studio中通过Gradle导入库

java - 减少 IntelliJ IDEA 内存使用的方法?

java.lang.ClassNotFoundException : org. postgresql.Driver 与 Maven

java - SQL ORDER BY 子句可以与数据源中的任何列一起使用吗?

java - DocumentBuilder 线程安全吗?

java - ElasticSearch Java API 客户端 - 发送已序列化的数据并避免序列化