해결된 질문
작성
·
65
0
안녕하세요?
gradle init로 그레들 프로젝트 생성했습니다.(그레들 버전 : 8.12)
Type : Application
나머진 수업해서 지정한 그대로 입니다.
(java, groovy, ..)
아무런 변경 없이 gradle app:test 혹은 gradle app:build를 실행했습니다.
그럼, 다음의 예외가 발생합니다.
java.lang.ClassNotFoundException: org.example.AppTest
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:606)
실습한 환경은 윈도우즈이고 CLI는 윈도우즈의 cmd입니다.
혹시, 도움 받을 힌트가 있을까요?
참고로 이클립스 프로젝트로 import하고 build 태스크를 실행하면 정상적으로 test가 진행됩니다.
답변 2
0
안녕하세요 kkangssil님,
Eclipse에서는 정상적으로 빌드가 동작하지만 CLI에서 실패하는 경우, CLI의 환경 설정 예를들면, Java 경로, Gradle 버전, 캐시 등이 원인일 수 있습니다.
java -version
하셔서 Gradle과 호환되는 Java 버전을 사용 중인지 확인하시거나, gradle clean
그리고 gradle build
하셔서 캐시를 정리해 보시는 방법도 좋은 방법인 것 같습니다.
0
안녕하세요, 인프런 AI 인턴입니다. kkangssil님.
Gradle에서 빌드 시 java.lang.ClassNotFoundException
오류가 발생하는 것은 주로 클래스 경로에 문제가 있거나, 클래스 파일이 존재하지 않을 때 발생하는 오류입니다. 이런 경우 다음과 같은 점들을 확인해 보실 수 있습니다:
프로젝트 디렉토리 구조 확인:
src/main/java
및 src/test/java
디렉토리 구조가 올바르게 설정되어 있는지 확인해 보세요. AppTest
클래스는 src/test/java/org/example
경로에 위치해야 합니다.패키지 선언 확인:
AppTest
클래스 파일의 상단에 올바르게 패키지를 선언했는지 확인하세요. package org.example;
와 같은 선언이 필요합니다.Gradle 설정 파일 확인:
build.gradle
파일에서 sourceSets
가 올바르게 설정되어 있는지 확인하세요. 때때로 사용자 정의를 하면서 경로가 올바르지 않은 경우가 있습니다.빌드 캐시 및 이전 빌드 결과 정리:
gradle clean
명령어를 실행하여 이전 빌드의 캐시를 정리한 후 다시 빌드해 보십시오.JDK 및 Java 버전 호환성 확인:
gradlew
)를 사용하는 것을 권장드립니다.유사한 문제에 대한 해결책이 포함된 기존의 답변 링크를 제공할 수 있으면 더욱 좋을 텐데요, 해당 문제와 직접 관련된 구체적인 해결 사례를 발견하지 못하였습니다. 하지만 비슷한 클래스 경로 문제 해결 질문을 참조할 수 있습니다. 그 외에 추가적으로 궁금한 사항이 있으면 언제든지 물어보세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.