我想将v5.x Spring导入IDEA。
我按照文档import-into-idea.md
运行命令./gradlew cleanIdea :spring-oxm:compileTestJava
。
然后,它会抛出错误。
如何将v5.x项目导入IDEA?
我尝试了不同的方式多次:
./gradlew cleanIdea :spring-oxm:compileTestJava
。没关系。BeanFactory
。./gradlew clean :spring-oxm:compileTestJava
(代码是v5.0.0.RC1),它会抛出许多错误。 命令为./gradlew clean :spring-oxm:compileTestJava
我向Spring JIRA报告问题:[SPR-15592] can not build the project. - Spring JIRA。我看了提交。提交者将命令从./gradlew cleanIdea :spring-oxm:compileTestJava
更改为./gradlew :spring-oxm:compileTestJava
。我测试了命令,但它仍然存在错误。
我将项目导入IDEA的方式如下:
./gradlew cleanIdea :spring-oxm:compileTestJava
spring-framework
文件夹Import project from the external model
- > Gradle
,点击Next
Finish
,然后等待几分钟。如果第1步抛出错误,我将代码导入IDEA,IDEA找到很多类,比如BeanFactory,我无法运行测试方法。
通过这种方式,我可以将v4。* Spring导入IDEA并运行测试方法。但是我无法将v5。* Spring导入IDEA。
如果我首先在v5.x Spring上运行命令
./gradlew clean
,我运行命令./gradlew :spring-oxm:compileTestJava
抛出错误。如果代码是v4.x,则可以。
我的发展环境:
macOS 10.12.4
IDEA is 2017.1.3.
java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
不要关心IJ。请git checkout master
,然后git pull
,获取最新消息来源。 首先运行./gradlew clean
,然后运行./gradlew :spring-oxm:compileTestJava
,之后应该抛出错误。
org.springframework.oxm.jaxb.test.FlightType
,org.springframework.oxm.jaxb.test.Flights
和org.springframework.oxm.jaxb.test.ObjectFactory
已导入Jaxb2MarshallerTests
和Jaxb2UnmarshallerTests
。但我找不到org.springframework.oxm.jaxb.test
包。我发现这些类是在/spring-oxm/src/test/resources/org/springframework/oxm/config/oxmNamespaceHandlerTest.xml
中配置的。 该文件的含义是什么?如何生成这三个类?
我发现了一些关于在build.gradle
中生成测试类的问题:
project("spring-oxm") {
...
dependencies {
...
testCompile("org.xmlunit:xmlunit-matchers:${xmlunitVersion}")
testCompile(files(genCastor.classesDir).builtBy(genCastor))
testCompile(files(genJaxb.classesDir).builtBy(genJaxb))
testRuntime("xerces:xercesImpl:2.11.0") // for Castor
testRuntime("com.sun.xml.bind:jaxb-core:${jaxbVersion}")
testRuntime("com.sun.xml.bind:jaxb-impl:${jaxbVersion}")
}
}
我猜配置用于生成thress类。但我运行./gradlew :spring-oxm:compileTestJava
,它没有生成thress类。 如何使用配置?
错误日志为 log is here 。
答案 0 :(得分:0)
我从github中删除了代码。然后我可以运行./gradlew :spring-oxm:compileTestJava
。我比较两个代码来找出差异。