어떻게 Maven 순환 종속성을 해결할 수 있습니까? A가 부모 프로젝트이고 B와 C가 자식 프로젝트라고 가정합니다. B가 C에 종속적이고 C가 B에 종속되어있는 경우 다른 프로젝트를 갖는 것 이외의 순환 종속성을 해결할 수있는 방법이 있습니까?Maven 순환 종속성을 해결하는 방법
미리 감사드립니다. 포럼에서 검색했지만 정확한 해결책을 얻을 수 없습니다. 어떤 가능성이 있는지 알려 주시기 바랍니다.
어떻게 Maven 순환 종속성을 해결할 수 있습니까? A가 부모 프로젝트이고 B와 C가 자식 프로젝트라고 가정합니다. B가 C에 종속적이고 C가 B에 종속되어있는 경우 다른 프로젝트를 갖는 것 이외의 순환 종속성을 해결할 수있는 방법이 있습니까?Maven 순환 종속성을 해결하는 방법
미리 감사드립니다. 포럼에서 검색했지만 정확한 해결책을 얻을 수 없습니다. 어떤 가능성이 있는지 알려 주시기 바랍니다.
Maven은 프로젝트간에 순환 종속성을 허용하지 않습니다. 그렇지 않으면 먼저 빌드 할 프로젝트가 명확하지 않기 때문입니다. 따라서이주기를 제거해야합니다. 한 가지 해결책은 이미 언급 한 것과 다른 프로젝트를 만드는 것입니다. 이것이 도움이 될 때 다른 클래스는 B에서 C로 또는 C에서 C로 일부 클래스를 이동하는 것입니다. 또는 두 개를 가질 필요가없는 경우 프로젝트 B와 C를 하나의 프로젝트에 병합하는 것이 올바른 경우도 있습니다.
그러나 프로젝트가 서로 의존하는 이유를 알지 않고 분석하지 않으면 최상의 솔루션을 제안하기가 다소 어려울 수 있습니다.
따라서 JDepend 또는 InteliJ 분석 도구와 같은 도구를 사용하여 문제가있는 클래스를 찾고이를 기반으로 소프트웨어에 대한 더 나은 디자인을 찾을 수 있습니다.
대부분의 경우 인터페이스 모듈과 구현 모듈과 같은 것을 만들어 대부분의 사이클을 제거합니다.
당신은 새로운 프로젝트를 만드는 것을 배제했습니다. 그것은 내가하고 싶은 일입니다 ... 당신이 그렇게하고 싶지 않은 이유는 무엇입니까? 그것은 최상의 해결책이 될 것입니다. – NilsH