나는 우리가 생산하는 두 개의 병에 의존하는 프로젝트를 가지고 있습니다. 이 두 개의 jar를 저장소에 넣었습니다. Ivy가이를 다운로드하고, 컴파일 및 초기 항아리를 만드는 데는 모든 것이 좋습니다.Ivy : 처리에 Jar가 필요하지만 컴파일되지 않음
그러나이 항아리에 대해 실행해야하는 obfuscator 인 다른 항아리가 있습니다. 이것은 저장소에도 있지만 컴파일에는 필요하지 않습니다. 대신, 나는 단순히 새로 만들어진 항아리에 대한 프로그램으로 실행합니다.
이 난독 화 항아리의 구성을 어떻게 분류해야합니까? 나는 이 컴파일을 위해 필요하지 않기 때문에을 컴파일 할 수 없다고 말할 수 없습니다. 또한 런타임 구성 중 하나 여야합니다. 따라서 은, _optional, _master 또는 시험으로 제공됩니다.
소프트웨어를 빌드하는 데 필요한 Jar의 특수 구성을 만들 수 있지만 클래스 패스에는 필요하지 않지만 표준을 깨고 기본 configurations 이상을 생성하고 싶지는 않습니다.
이 문제를 해결하는 가장 좋은 방법은 무엇입니까?
내부 정보를 위해'visibility = "private"'속성을 추가하는 것을 고려해 보라. 모듈 외부의 아무도'test'와'build'를 필요로하지 않습니다. '제공했다. .. 나는 모른다. –
@ A.H. 충분히 사실. Visibility 속성의 목적이라고 생각합니다. 개인적으로 필자는 구성을 숨길 필요가 없다고 생각했습니다. –
그래,이 방법은 내가 가기로 결심했다. 실제로이 프로세스에는 두 가지 종속성이있다. 이것은 [Allatori Obfuscater] (http://www.allatori.com/)입니다. obfuscater를 실행하려면 항아리가 필요하지만 obfuscation을 수행하려면 두 번째 항아리가 필요했습니다. 실제로 실제로는 두 개의 개별 클래스 경로가됩니다. 하나는 Allatori 병을 사용하여 작업을 실행하는 것입니다. 그러나 Allatori가 실행될 때 다른 jar를 포함해야하지만 Java 클래스 경로에는 포함되어 있지 않아야합니다. –