Bitbucket에 대한 프로젝트가 있습니다. 소스 만 커밋됩니다. 새 시스템으로 프로젝트를 검색하기 위해 IntelliJ 내에서 Version Control> Version Control에서 Checkout을 사용했습니다.
그런 다음이 소스에서 새 프로젝트를 만들지 여부를 묻습니다. 여태까지는 그런대로 잘됐다. 단일 모듈로 구성된 멋진 Java 프로젝트를 만듭니다.
그러나이 프로젝트를 IntelliJ로 가져 오는 목표는 프로젝트를 Maven 프로젝트로 바꾸는 것이 었습니다. 내가 할 수있는 옵션을 찾을 수 없습니다!
IntelliJ가 이름과 artifactId 및 저장소를 사용하여 기본 빈 pom.xml을 생성하도록 할 수 있습니까? 아니면 먼저 프로젝트를 Maven 프로젝트로 가져 오는 방법이 있습니까? (기존 소스에서 프로젝트를 만들려고 할 때마다 Java 프로젝트 옵션 만 제공합니다.)
답변
모듈을 마우스 오른쪽 버튼으로 클릭하고 “프레임 워크 지원 추가 …”를 선택한 다음 “Maven”기술을 확인하십시오.
(이것은 또한 pom.xml
수정할 수 있도록 만듭니다 .)
소스 리포지토리 요소를 추가하려는 경우 수동으로해야한다고 생각합니다.
Pre-IntelliJ 13 이것은 프로젝트를 Maven 표준 디렉토리 레이아웃으로 변환하지 않으며 13+ 이상입니다.
답변
혜택을받는 사람들을위한 비주얼.
프로젝트 이름 (이 예에서는 “test”)을 마우스 오른쪽 단추로 클릭 한 후 “프레임 워크 지원 추가”를 선택하고 “Maven”옵션을 확인하십시오.
답변
- ‘Maven 프로젝트’를 엽니 다 (오른쪽 탭).
- ‘Maven 프로젝트 추가’사용
- pom.xml 찾기
답변
이와 같은 프로젝트를 변환하면 더 큰 프로젝트가있을 때 눈에 띄는 부작용이있을 수 있다는 중요한 힌트를 추가하고 싶습니다. Intellij Idea (2017)가 pom.xml에서만 중요한 설정을 가져 와서 약간의 혼란을 초래할 수 있기 때문에 다음 섹션에 영향을 미칩니다.
- 모듈에 대한 주석 설정이 변경되었습니다.
- 모듈의 컴파일러 출력 경로가 변경되었습니다.
- 리소스 설정은 완전히 무시되며 pom.xml에서만 가져옵니다.
- 모듈 종속성이 엉망이되어 점검해야합니다
- 모듈의 언어 / 인코딩 설정이 변경되었습니다.
이 모든 사항을 검토하고 조정해야하지만 이후에는 매력처럼 작동합니다.
더 불행히도 충분한 pom.xml 템플릿이 생성되지 않았으므로 대부분의 문제를 해결하는 데 도움이되는 예제를 추가했습니다.
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>Name</groupId>
<artifactId>Artifact</artifactId>
<version>4.0</version>
<properties>
<!-- Generic properties -->
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
<dependencies>
<!--All dependencies to put here, including module dependencies-->
</dependencies>
<build>
<directory>${project.basedir}/target</directory>
<outputDirectory>${project.build.directory}/classes</outputDirectory>
<testOutputDirectory>${project.build.directory}/test-classes</testOutputDirectory>
<sourceDirectory>${project.basedir}/src/main/java</sourceDirectory>
<testSourceDirectory> ${project.basedir}/src/test/java</testSourceDirectory>
<resources>
<resource>
<directory>${project.basedir}/src/main/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
<resource>
<directory>${project.basedir}/src/main/resources</directory>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<annotationProcessors/>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin>
</plugins>
</build>
2019 수정 :
- 재귀 리소스 스캔 추가
- IDEA가 컨텐츠 루트 구조를 폐기하는 혼동을 피하기 위해 중요 할 수있는 디렉토리 스펙 추가
답변
나는 다른 시나리오를 가지고 있었지만 여전히이 대답에 착륙했습니다.
여러 Maven 프로젝트가 들어있는 루트 프로젝트 폴더 와이 프로젝트에 사용 된 다른 것들을 가져 왔습니다.
IntelliJ는 Java 파일을 인식했지만 Maven 종속성을 해결하지 못했습니다.
각 폼을 마우스 오른쪽 버튼으로 클릭하고 “maven 프로젝트로 추가”를 수행하여이 문제를 해결했습니다.
답변
아래 단계를 수행하여 동일한 문제를 해결했습니다.
-
파일> 프로젝트 닫기
-
프로젝트 가져 오기
-
시스템 파일 팝업을 통해 프로젝트를 선택하십시오
-
“외부 모델에서 프로젝트 가져 오기”단일 선택 단추를 선택하고 Maven 항목을 선택하십시오.
-
그리고 일부 다음 버튼 (JDK 선택, …)
그런 다음 프로젝트를 Maven 모듈로 가져옵니다.
답변
이 문제는 나를 위해 수정되었습니다. 오른쪽에 maven 프로젝트 열기 탭. 폼이 아직 없으면 추가 한 다음 탭 왼쪽 상단에서 새로 고침을 클릭하십시오.