IntelliJ продолжает сбрасывать настройки Java каждый раз, когда я повторно импортирую Gradle - PullRequest
0 голосов
/ 12 февраля 2019

Я нашел несколько похожих сообщений с mvn, но ни одного с Gradle.Вот проблема.

Я захожу в Файл-> Структура проекта-> Проект и меняю Project SDK на 11, а Уровень проекта на 10. Я нажимаю «Применить», ошибки исчезают.

Я обновляюGradle Project, выберите Файл-> Структура проекта-> Проект и его Project SDK установлен на 8 и Project Language Level на 6.

Итак, после прочтения проблем, которые я обнаружил здесь в stackoverflow, вот мой build.gradle.

/*
 * This file was generated by the Gradle 'init' task.
 *
 * This generated file contains a sample Java project to get you started.
 * For more details take a look at the Java Quickstart chapter in the Gradle
 * user guide available at https://docs.gradle.org/5.1.1/userguide/tutorial_java_projects.html
 */

plugins {
    // Apply the java plugin to add support for Java
    id 'java'

    // Apply the application plugin to add support for building an application
    id 'application'

    // Apply the groovy plugin to also add support for Groovy (needed for Spock)
    id 'groovy'

    id 'org.springframework.boot' version '2.1.2.RELEASE'
}

sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11

repositories {
    // Use jcenter for resolving your dependencies.
    // You can declare any Maven/Ivy/file repository here.
    jcenter()
    flatDir {
        dirs 'libs'
    }
}

dependencies {
    // This dependency is found on compile classpath of this component and consumers.
    implementation 'com.google.guava:guava:26.0-jre'

    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    testImplementation 'org.springframework.boot:spring-boot-devtools'

    implementation 'org.mariadb.jdbc:mariadb-java-client:2.4.0'
    compile fileTree(dir: 'libs', include: ['*.jar'])

    implementation 'org.apache.logging.log4j:log4j-api:2.11.2'
    implementation 'org.apache.logging.log4j:log4j-core:2.11.2'

    compile fileTree(dir: 'libs', include: ['*.jar'])
    testImplementation 'org.springframework.boot:spring-boot-starter-test'

    // Use the latest Groovy version for Spock testing
    testImplementation 'org.codehaus.groovy:groovy-all:2.5.4'

    // Use the awesome Spock testing and specification framework even with Java
    testImplementation 'org.spockframework:spock-core:1.2-groovy-2.5'
    testImplementation 'junit:junit:4.12'
    testImplementation group: 'com.h2database', name: 'h2', version: '1.4.197'
}

// Define the main class for the application
mainClassName = 'manage.App'

apply plugin: 'io.spring.dependency-management'

task deploy(dependsOn: 'build', type: Copy) {
    from bootJar.archivePath
    into "/opt/heavyweight"
}

Обновить.Он по-прежнему сбрасывает настройки моего проекта.

Вот настройки gradle:

Gradle Settings

Пожалуйста, помогите.

thomas@office-workstation:/opt/gradle4$ bin/gradle -version
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.codehaus.groovy.reflection.CachedClass (file:/opt/gradle-4.10.2/lib/groovy-all-2.4.15.jar) to method java.lang.Object.finalize()
WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.reflection.CachedClass
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

------------------------------------------------------------
Gradle 4.10.2
------------------------------------------------------------

Build time:   2018-09-19 18:10:15 UTC
Revision:     b4d8d5d170bb4ba516e88d7fe5647e2323d791dd

Kotlin DSL:   1.0-rc-6
Kotlin:       1.2.61
Groovy:       2.4.15
Ant:          Apache Ant(TM) version 1.9.11 compiled on March 23 2018
JVM:          11 (Oracle Corporation 11+28)
OS:           Linux 4.18.0-14-generic amd64

thomas@office-workstation:/opt/gradle4$ 

1 Ответ

0 голосов
/ 12 февраля 2019

Это может иногда случаться.Файлы проекта могут быть довольно сложными, особенно если вы работаете с многомодульным.

Прежде всего, я бы предпочел всегда использовать Enum константы.

sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11

Затем выполните резервное копирование .idea/modules.xml, удалите его и повторно импортируйте проект Gradle из окна инструмента Gradle.


В качестве последнего шага создайте резервную копию файла *.iml проекта, удалите его, повторно импортируйте, как указано выше.
Перезапустите идею, если файлы *.iml не воссоздаются.

Дайте мне знать, если это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...