0
나는 RPM 성운 플러그인 (기본적으로 그것을 감싸고 있음)에 의존하는 gradle plugin을 작성하려고합니다. 나는 문제없이 플러그인을 컴파일한다. 생성 된 ivy.xml에서 나는 괜찮 느낌Gradle plugin dependency (NoClassDefFoundError)
<dependencies>
<dependency org="com.netflix.nebula" name="gradle-ospackage-plugin" rev="4.1.0" conf="compile->default"/>
</dependencies>
을 가지고,하지만 난 응용 프로그램에서 내 플러그인을 적용 할 때 코드
project.plugins.with {
apply RpmPlugin
}
의이 부분을 실행할 때, 나는
Caused by: java.lang.NoClassDefFoundError: com/netflix/gradle/plugins/rpm/RpmPlugin
at com.cisco.td.gradle.rpm.ServiceRpmPlugin$_configureProject_closure2.doCall(ServiceRpmPlugin.groovy:27)
at com.cisco.td.gradle.rpm.ServiceRpmPlugin.configureProject(ServiceRpmPlugin.groovy:26)
를 얻을 수
내 플러그인 클래스에서 빌드 클래스 경로에 대한 종속성을 추가하려고 시도했습니다.
나는 buildscript 의존성과 같은 응용 프로그램 프로젝트에 직접 성운 종속성을 추가 할 때Caused by: org.gradle.api.InvalidUserDataException: Cannot change dependencies of configuration ':classpath' after it has been resolved.
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.validateMutation(DefaultConfiguration.java:631)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$2.run(DefaultConfiguration.java:174)
at org.gradle.api.internal.DefaultDomainObjectCollection.assertMutable(DefaultDomainObjectCollection.java:274)
그것은, 작동하지만 이것은 내가이 일을해야한다고 생각하는 방법 아니다 - :
project.buildscript.dependencies {
classpath "com.netflix.nebula:gradle-ospackage-plugin:4.1.0"
}
는하지만이 발생합니다 플러그인은 모든 의존성을 다운로드해야하며 클라이언트는주의를 기울여야합니다. ...
미리 감사드립니다!