【问题标题】:Can't compile gradle vaadin project in Intellij无法在 Intellij 中编译 gradle vaadin 项目
【发布时间】:2014-10-08 18:47:33
【问题描述】:

我想在 Mac OSX 上试用带有 java 8、gradle 2.1 和 IntelliJ 13.1.5 的 Vaadin 7。我用brew安装了gradle。这是我到目前为止所做的事情

  • 我在 Intellij 中使用 gradle 向导创建了一个项目
  • 我是这样设置tomcat的Creating a Project with Intellij IDEAvaadin教程。
  • 我已将vaadin-gradle-plugin 添加到我的build.gradle 文件中。
  • 我点击了 gradle 刷新按钮
  • 我在 intellij gradle 插件菜单中运行了 vaadinCreateProject
  • 我确保我的 JAVA_HOMEGRADLE_HOME 指向正确的位置

使用 gradle 命令一切正常,我运行 vaadinRun 并导航 http://localhost://8080 并看到了 hello world。但是 IntelliJ 的所有标识符都用“无法解析符号”突出显示为红色。我尝试过各种形式的重新编译和清除缓存。

如何让 Intellij 识别代码?

我的 gradle.build 文件。

apply plugin: 'java'
apply from: 'http://plugins.jasoft.fi/vaadin.plugin'

sourceCompatibility = 1.5
version = '1.0'

repositories {
    mavenCentral()
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.11'
}

【问题讨论】:

  • “所有标识符”是指只有 vaadin 的东西还是更多?
  • 我已经添加了错误的图像。它既是 vaadin 类,也是 javax 类。
  • 和项目树中External Libraries下的东西主要只有JDK和junit?我怀疑,IDEA 无法处理 vaadin 插件用来获取 deps 的 gradle 配置......或者当然它可能是我们都非常喜欢的一些随机 IDEA fsckup ;)
  • 是的,External Libraries 只显示 hamcrest-core 和 junit。
  • 当你运行gradle dependencies,你会看到,有很多配置。 IDEA 很可能只接收到defaultcompile,而且很可能又是空的。您可以向您的部门添加一些常见的 vaadin 部门,例如 -server-client-themes

标签: java macos intellij-idea gradle vaadin


【解决方案1】:

Vaadin Gradle 插件会在运行时注入 Vaadin 依赖项,而 Intellij 的 JetGradle 插件由于某种原因无法获取这些依赖项。

您可以改为使用 Gradle 创意插件(在 build.gradle 中应用插件:'idea')并运行创意任务。之后将项目导入 Intellij,所有依赖项都应该在类路径上。

每当您添加依赖项时,您都需要再次运行想法任务,以便更新类路径。

【讨论】:

    【解决方案2】:

    根据JetBrains, Vaadin 插件需要 Gradle 3.0+

    // Vaadin plugin requires Gradle 3.0+
    task wrapper(type: Wrapper) {
        gradleVersion = '3.0'
    }
    

    我不确定你的项目是否可以使用那勺 groovy,但没有它就不应该工作。

    【讨论】:

    • 我什至不记得问过这个问题,但我相信你:)
    猜你喜欢
    • 2016-08-05
    • 1970-01-01
    • 2020-07-14
    • 2014-08-27
    • 2019-12-07
    • 2021-10-27
    • 1970-01-01
    • 2017-12-30
    • 2019-09-14
    相关资源
    最近更新 更多