1

javaee プロジェクトを ant から gradle に移行しようとしています。私の最終的な目標は、gradle を介して桟橋でプロジェクトを実行できるようにすることです。そのためにgrettyプラグインを使いたいです。Intellij IDEA CE 2018.1 でデフォルトの gradle ラッパーを使用しています

grtty の appStart タスクを開始すると、次のエラーが表示されます。

Caused by: groovy.lang.MissingMethodException: No signature of method: static org.akhikhl.gretty.ProjectUtils.getClassPath() is applicable for argument types: (org.gradle.api.internal.project.DefaultProject_Decorated, null, java.lang.String) values: [project ':myProject', null, runtime]

私のプロジェクトのディレクトリ構造は、gradle が期待するデフォルトのものとは異なります。私はgrettyソースコードをチェックしましたが、例外が発生しました。

gretty/libs/gretty/src/main/groovy/org/akhikhl/gretty/StartBaseTask.groovy:212

resolvedClassPath.addAll(ProjectUtils.getClassPath(proj, wconfig.inplace, runtimeConfig))

wconfig.inplace部品が戻りnullます。ファイルに何かを設定する必要があると思いbuild.gradleますが、それが何であるかわかりません。私のファイルの内容:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'org.akhikhl.gretty:gretty:+'
    }
}

apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'ear'
apply plugin: 'org.akhikhl.gretty'

repositories {
    jcenter()

    flatDir {
        dirs '../Libs'
    }
}

sourceSets {
    main {
        java {
            srcDirs = ["src"]
        }

        resources {
            srcDir 'WebContent/resources'
        }
    }


    test{
        java {
            srcDirs=["test"]
        }
    }
}

dependencies {
    compile 'javax.servlet:javax.servlet-api:3.1.0'

    testCompile 'junit:junit:4.12'

    compile 'junit:junit:4.12'
    // more dependencies...
}


gretty {
    httpPort = 8080
    contextPath = '/myProject'
    servletContainer = 'jetty9'
    webAppDirName = '/WebContent'
}

これを修正するにはどうすればよいですか?

前もって感謝します

4

1 に答える 1