반응형 gradle4 Gradle build jar 시 plain(xxxx-plain.jar) 제거하기 gradle로 jar 빌드 시 bootJar(excutable jar)로 빌드하는 경우가 대부분이지만 공통모듈을 분리한다거나 라이브러리를 직접 개발해서 배포를 해야하는 경우가 있다. 이때 jar로 빌드를 하게 되면 jar 파일명에 plain이라는 Classifier가 붙게 된다. jar{ enabled=true } 이렇게 되면 다른 프로젝트 등에서 Nexus 등을 통해 의존성을 걸어서 사용할 때 안되는 경우가 발생한다. jar파일에서 plain을 제거하는 방법은 다음과 같다. jar{ enabled=true archiveClassifier = '' // Classifier 제거 } 빌드를 하게되면 이제 plain이 없어졌다. 2023. 7. 22. Gradle 멀티모듈에서 특정(one) 모듈(subproject)만 빌드 Gradle에서 멀티모듈 환경으로 개발을 하는 경우 기본적으로 빌드 시 매번 전체 모듈이 빌드가 된다. 하지만 상황에 따라서 특정 모듈(subproject)만 빌드를 수행하고 싶을 때가 있다. 이럴때 매번 전체 모듈을 빌드하더라도 원하는 결과물은 생성되겠지만 불필요하게 빌드시간이 증가하게 된다. 아래와 같이 간단한 Gradle 명령으로 특정 모듈만 빌드가 가능하다. Parent(Root) - A모듈 - B모듈 - C모듈 위와 같이 Parent에 A, B, C 프로젝트가 자식 모듈(subproject)로 구성된 멀티 모듈 환경이 있다고 가정하자. 먼저 일반적인 Gradle 명령은 다음과 같다. Parent(Root) 기준으로 전체 모듈이 빌드가 된다. gradle build 특정 모듈만 빌드를 하고 싶은 .. 2023. 5. 27. IntelliJ Gradle 빌드 디렉토리(out, build) 설정 IntelliJ에서 gradle 프로젝트로 개발을 할 때 이상한 현상을 발견했다. 프로젝트 구조는 아래와 같이 멀티 모듈 구조이고, Libaray모듈이 Application 모듈에 의존성(Library -> Application)으로 설정되어 Application모듈을 실행하는 구조였다. 프로젝트 구조 - parent - Library - Application Library모듈은 src/main/java 외에 src/main/resources도 포함되어 있어서 Application 모듈을 실행했을 때 모두 classpath로 참조가 가능해야하는 구조였다. 하지만 Application을 실행했을때 Application에서 Library모듈의 resources 파일들을 참조할 수 없는 에러가 발생했다. Ap.. 2022. 5. 6. Gradle Nexus Repository 설정 gradle을 사용하면서 repository를 사설repository인 Nexus를 사용하도록 설정하는 방법을 정리해본다. 사전에 Nexus에 Maven Central Repository 미러링 설정은 해두었다. 1. gradle wrapper 설정 gradle wrapper는 서로 다른 개발환경에서 각자의 gradle 버전에 영향을 받지않고 프로젝트에서 설정한 gradle을 사용하기 위한 방법이다. gradle-wrapper.properties 파일 수정 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists # distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-b.. 2022. 5. 6. 이전 1 다음 반응형