소스 루트 IntelliJ 외부에 있는 Java 파일
인텔리J에 여러 지점을 둔 GitLab에서 스프링 부트 프로젝트를 복제했습니다.저는 일하고 싶은 지점에 체크 아웃합니다.하지만 모든 파일에 "Java file outside of source root"이 표시됩니다.제가 뭘 잘못하고 있는지 알려주세요.IntelliJ를 설치한 지 얼마 되지 않아 처음 Import하는 프로젝트입니다.
git에서 Import를 하면 IntelliJ는 프로젝트 구조를 maven(또는 gradle)에서 자동으로 Import하지 않습니다.
그 후 루트 디렉토리의 pom.xml 파일을 오른쪽 클릭하여 [Add as maven project]를 선택합니다.그러면 폴더가 올바르게 표시되고 종속 라이브러리가 Import됩니다.개별 원본 폴더를 수동으로 표시할 필요가 없습니다.
IntelliJ 외부에서 Git 복제를 하고 로컬 파일 시스템에서 IntelliJ 프로젝트를 열면 IntelliJ가 자동으로 maven 프로젝트 구조를 Import합니다.
매우 심플한 솔루션: -
IntelliJ 오른쪽 툴바의 [maven]를 클릭하여 [Refresh]버튼을 클릭합니다.
다음과 같이 수정했습니다.
File > Project Structure > Modules > Sources
Java 파일 dir를 Source로 표시합니다.
이것은 나를 매우 화나게 했고 나도 초보이다.다음 방법으로 해결했습니다.
file > 프로젝트 구조 >
다음으로 [Modules](모듈)로 이동하여 오른쪽 끝에 있는 x마크를 사용하여 루트에서 모든 파일을 삭제합니다.그런 다음 +Add Content Root를 사용하여 .java가 포함된 src 폴더를 다시 선택하고 Apply를 누릅니다.마지막으로 인텔iJ는 프로젝트와 마찬가지로 파일을 표시하고 폴더는 메인 뷰에서 파란색 정사각형을 표시합니다.
해결 방법: "소스 루트 외부에 있는 Java 파일"
- 프로젝트 구조를 엽니다.
- 왼쪽 창의 프로젝트 설정에서 모듈을 선택합니다.
- Java 파일(소스 루트 외부에 있는 파일)이 있는 폴더를 클릭합니다.
- 그런 다음 Mark as: 옵션에서 Sources를 선택합니다.
- 여러 폴더에 동일한 단계를 적용합니다.
pom.xm >> maven >> 프로젝트 새로고침 우클릭
멀티 모듈 프로젝트
[ root pom . xml ]를 선택합니다.[ Maven ]를 클릭합니다.[ Unlink ]<-- 그러면 모든 서브모듈이 삭제됩니다.
root pom.xml --> Add As Maven project를 선택합니다.
모든 게 잘 풀렸지..
해결했습니다!!IntelliJ -> pom.xml -> Add as Maven Project 를 오른쪽 클릭합니다.
저처럼 POM 파일이 지워지고 회색(무시)으로 표시되는 경우:
POM.xml을 마우스 오른쪽 버튼으로 클릭하고 "Maven - Unignore projects"를 선택할 수 있습니다.
파일 -> 프로젝트 구조 -> 모듈
전체 모듈을 제거하고 추가 버튼을 클릭한 후 '모듈 가져오기'를 선택하고 프로젝트의 루트 maven pom.xml을 선택합니다.
덕분에 시간을 절약할 수 있었다.
"소스 루트 intelliJ 외부에 있는 Java 파일"에 대한 해결 방법
Maven 소스 재생성 및 폴더 업데이트
합니다.pom.xml
Maven
Generate Sources and Update Folders
이제 프로젝트가 실행되어야 합니다.
다음은 메뉴의 이미지입니다.
intelij에서 Maven을 클릭하고 프로젝트를 선택한 다음 오른쪽에서 프로젝트 무시 안 함을 선택합니다.
오른쪽 상단 'Maven' 창에서 'Maven reload'(또는 Gradle reload)를 했더니 문제가 해결되었습니다.
★★->
구조->
듈select the Sources tab in the third pane from the left
에 가다
File >>Project Structure>>Modules>> Import Module>> (At this point your src folder will appear on the right most pane automatically ) >> Apply >> OK
IntelliJ가 멀티 모듈프로젝트 파일을 무시하고 있을 수 있습니다.모듈이 무시되면 IDE가 해당 파일의 루트를 찾기 어려워집니다. 때문에, 「 」는,java file outside of source root
또 다른 솔루션:
Preferences -> Build, Execution, Deployment -> Build Tools -> Maven -> Ignored Files
다음으로 IntelliJ가 무시하지 않도록 하는 모듈을 꺼줍니다.
Android Studio Chipmunk 2021.2.1 패치 1 Android 。는 이 버그를 사용하는 있습니다.manifest.srcFile
: https://issuetracker.google.com/issues/218370114?hl=ko
옵션은 카나리 채널로 전환하거나 안정적인 채널로 수정이 릴리스되기를 기다리는 것입니다. ★★★★★★★★★★★★★★★★★★★★★★★★★★manifest.srcFile
안에서build.gradle
.
이 문제에 대한 해결책을 제시하겠습니다.상기 중 어느 것도 효과가 없었기 때문입니다.
프로젝트에 여러 개의 POM 파일이 있는 경우 오른쪽의 Maven 사이드바에서 더하기(+) 버튼을 클릭하고 프로젝트의 프로젝트 구조(왼쪽 사이드바)에서 옆에 Maven('M') 아이콘이 없는 다른 POM 파일로 이동합니다.
'확인'을 클릭합니다.이렇게 하면 사용되지 않는 POM 파일에서 모든 Maven 의존관계가 로딩되어 저는 모든 것이 수정되었습니다.
Maven 사이드바 > 플러스 아이콘(+) > 다른 POM 파일로의 다이렉트> 'OK'
저는 그것을 해결하기 위해 작업한 모듈을 새 창으로 열어야 했습니다.
또 다른 방법을 추가하기는 싫지만, 위의 방법을 시도했다가 실패한 후 이 방법을 사용할 수 있었습니다.멀티 모드 프로젝트를 했습니다.Maven 작업영역에서 모든 maven 프로젝트의 연결을 해제하고 프로젝트 작업영역에서 root poom.xml을 클릭하여 maven 프로젝트로 다시 로드합니다.이것이 항상 모두에게 효과가 있을지는 확실하지 않다.
멀티 모듈의 모듈 중 하나에서도 같은 문제가 발생하였습니다.maven
프로젝트.인마이InteliJ
idea, 설치 완료Maven Helper
플러그인이 있습니다.모듈을 우클릭하여 컨텍스트메뉴에서 [Run Maven]를 클릭하여 [Remport]을 클릭합니다.그 후, 제 문제는 해결되었습니다.
Intelij로 이동
File > Project Structure > Modules > Add
모듈 추가
src 폴더를 우클릭하여 "디렉토리를 마킹" -> "소스 루트" 또는 "테스트 소스 루트"를 선택합니다.
이것은 질문에 대한 코멘트에도 언급되어 있습니다.근데 너무 보고 싶어서 답글을 올리고 싶었어요.
내가 가졌던 사소한 실수를 가진 사람들을 위해:
간단한 문제 및 수정은 복제한 파일에 CD를 삽입하는 것이었습니다.실수로 작업해야 할 프로젝트가 아닌 아이디어로 부모 디렉토리를 열었습니다.
나는 인텔리J의 메이븐 경로를 변경해야 했다.설정 -> 빌드, 실행, 도입 -> 빌드 도구 -> 메이븐.
번들된 Maven 3 패스를 사용하면 이 문제가 해결되어 Spring Boot 어플리케이션이 정상적으로 기동했습니다.
다음 두 단계를 수행하십시오.
스텝 1: 루트 pom.xml 파일 Maven-> 소스 생성 및 폴더 업데이트 오른쪽 클릭
스텝 2: 루트 프로젝트레벨 pom.xml 우클릭>> maven>> 프로젝트 새로고침
pom.xml 우클릭 후 "maven"을 클릭하여 프로젝트를 새로고침합니다.
언급URL : https://stackoverflow.com/questions/63521181/java-file-outside-of-source-root-intellij
'source' 카테고리의 다른 글
Spring REST 서비스, Jersey REST 서비스 및 Spring+Jersey 솔루션의 차이점은 무엇입니까? (0) | 2023.03.06 |
---|---|
Twitter 부트스트랩과 Angular.js의 실제(또는 숨겨진) 차이점 (0) | 2023.03.06 |
빈 문자열에서 JSON.parse가 실패하는 이유는 무엇입니까? (0) | 2023.03.06 |
angular를 사용하여 브라우저 뒤로 버튼 클릭 이벤트를 감지하는 방법 (0) | 2023.03.06 |
angularjs 명령어로 컨트롤러를 요구하는 방법 (0) | 2023.03.06 |