2016-01-28 76 views
1

我刚刚创建Grails中3.1.0的测试项目,使用新的REST的API的个人资料Grails的基本REST的API项目:无法建立3.1.0

grails create-app rest-test --profile=rest-api 

无需做任何修改,当我尝试gradle build应用程序的构建失败:

cd rest-test 
gradle build 
:compileJava UP-TO-DATE 
:compileGroovy 
:processResources 
:classes 
:compileTestJava UP-TO-DATE 
:compileTestGroovy UP-TO-DATE 
:processTestResources UP-TO-DATE 
:testClasses UP-TO-DATE 
:compileIntegrationTestJava UP-TO-DATE 
:compileIntegrationTestGroovy UP-TO-DATE 
:findMainClass 
:buildProperties 
:compileGsonViews 
Invalid arguments: [C:\projects\rest-test\grails-app\views,C:\projects\rest-test\build\gson-classes\main,1.8,rest-test,C:\projects\rest-test\grails-app\conf\application.yml,UTF-8] 

Usage: java -cp CLASSPATH grails.plugin.json.view.JsonViewCompiler [srcDir] [destDir] [targetCompatibility] [packageImports] [packageName] [configFile] [encoding] 

:compileGsonViews FAILED 

FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':compileGsonViews'. 
> Process 'command 'C:\Program Files\Java\jdk1.8.0_66\bin\java.exe'' finished with non-zero exit value 1 

望着那错误消息,似乎没有足够的参数传递到Java调用。

如果我做了grails run-app我可以成功启动应用程序,并可以在localhost:8080上看到gson视图。

有没有人有任何想法为什么gradle build命令失败?

+0

哪个版本的Gradle?为了更好的兼容性,建议使用'gradle wrapper'。尝试使用'gradlew clean build' – dmahapatro

+0

@dmahapatro - 我刚刚检查过和同样的问题。使用gradle 2.9或2.10。 – acanby

+0

当我想创建一个没有域类的rest-api应用程序时,我遇到了同样的问题,只有很少的控制器。 “run-app”工作正常,但是任何创建WAR的尝试都会以相同的错误结束。在创建了一个没有任何内容的虚拟域类之后,错误消失了。有趣的是,只有在使用“rest-api”配置文件时才会出现此问题,但如果使用默认的“web”配置文件创建Grails应用程序,则相同的步骤将工作文件。显然,“rest-api”配置文件中存在一个错误,如果没有域类,则不允许构建应用程序。 – curd0

回答

1

找到了解决办法上Grails GitHub issue tracker

请更换线路

classpath "org.grails.plugins:views-gradle:1.0.1" 

随着

classpath "org.grails.plugins:views-gradle:1.0.3" 

在你build.gradle文件

我用Grails 3.1.2测试它 - 它的工作原理!