java渐变wsdl生成
我想从wsdl生成java文件。我尝试使用wsdl2javagradle插件。我定义插件:
subprojects {
buildscript{
repositories{
jcenter()
mavenCentral()
}
dependencies {
classpath 'no.nils:wsdl2java:0.10'
}
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'maven-publish'
apply plugin: 'application'
apply plugin: 'no.nils.wsdl2java'
....
}
但我有一个错误:
> Plugin with id 'no.nils.wsdl2java:no.nils:wsdl2java' not found.
我检查了语法(很多次都很好)。我在谷歌上搜索这个插件,它被很多人使用
有人知道出了什么问题吗
Upd:
我有一个定义插件的主梯度,有三个子项目,我想在那里使用这个插件
我在settings.gradle
中定义了子项目:
include 'project1', 'project2', 'project3'
我为每个项目制作了一个文件夹和build.gradle
文件
如果我注释掉了主build.gradle
中的apply plugin: 'no.nils.wsdl2java'
和子项目中的wsdl2java
方法,gradle工作得很好
# 1 楼答案
要解决这个问题,请尝试在插件声明之前添加buildScript,并在插件块之后应用wsdl插件,例如:
# 2 楼答案
我使用thisgit存储库完成了这个任务。建造。gradle文件看起来像这样
要生成java代码,我们需要运行gradle任务,如下所示
# 3 楼答案
我能够使用jaxws和ant任务使wsdl2java在我的gradle构建中工作。给你
# 4 楼答案
在
subprojects
-closure中添加buildscript
,这是不受支持的,请参见this Gradle discussion (Buildscript {} in subprojects {} ignored?)您不必为每个项目添加构建脚本,只需在根构建中声明即可。格拉德尔
# 5 楼答案
适用于任何希望使用Apache CXF生成的用户。我尽量避免使用任何插件。我通过创建带有依赖项的配置,用wsdl文件名外部化字符串数组,然后像这样使用它:
这只是简单地调用ApacheCXF类的javaexec——有关所有参数和选项,请参见docs
注意:如果您有一个包含wsdl文件的文件夹,并且希望从那里的所有wsdl文件生成类,那么就更容易了,只需这样使用它:
我把这些都写进了gist,如果你想看到它的完整性,gist是here