configurations {
jaxws
}
buildscript {
dependencies {
jaxws 'com.sun.xml.ws:jaxws-tools:2.1.4'
}
}
Конфигурация jaxws
не применима для зависимостей скрипта сборки. Во-первых, он находится за пределами конфигурации buildscript
и поэтому не виден. Во-вторых, зависимости скрипта сборки допускают только конфигурацию classpath
( Внешние зависимости для скрипта сборки ). Удаление jaxws 'com.sun.xml.ws:jaxws-tools:2.1.4'
из скрипта сборки исправляет проблему
Не удалось найти метод jaxws () для аргументов [...]
Следующая проблема заключается в том, что вы определяете зависимость jax-ws как
compile 'com.sun.xml.ws:jaxws-tools:2.1.4'
и попробуйте ссылаться на него как
taskdef(name: 'wsimport',
classname: 'com.sun.tools.ws.ant.WsImport',
classpath: configurations.jaxws.asPath)
^^^^^
Конфигурация jaxws
не имеет определенных зависимостей, поэтому путь пуст. Изменение рассматриваемой зависимости на
jaxws 'com.sun.xml.ws:jaxws-tools:2.1.4'
может решить эту проблему для вас.
Обновление
Поскольку Gradle заменил File classesDir
на FileCollection classesDirs
, согласно вашему комментарию вы получаете ошибку
Нет подписи метода: org.gradle.api.internal.file.collections.DefaultConfigurableFileCollection.mkdirs () применим к типам аргументов: () значения: [] Возможные решения: min (), tails (), first ( ), inits (), минус (org.gradle.api.file.FileCollection), мин (java.util.Comparator)
на линии
sourceSets.main.output.classesDirs.mkdirs()
Если у вас есть только 1 класс выходного каталога, можно использовать обходной путь
sourceSets.main.output.classesDirs.singleFile.mkdirs()
(из: FileCollection.getSingleFile () )