현재 위치 - 중국 분류 정보 발표 플랫폼 - 비즈니스 서비스 정보 - Java.lang.IllegalArgumentException은 무엇을 의미하나요?

Java.lang.IllegalArgumentException은 무엇을 의미하나요?

오류: java.lang.IllegalArgumentException 불법 인수 예외. 이는 불법 매개변수 예외라고도 할 수 있습니다. 인수는 매개변수를 의미하지 않으며 논쟁, 논쟁을 의미하며 args는 종종 형식적 매개변수로 사용됩니다.

SSM 동적 javaweb 서버 프레임워크에서 이 예외가 자주 나타납니다. 많은 사람들이 이것이 매개변수 예외라고 말합니다. ioc 컨테이너에 구성된 매개변수가 올바른지 확인하십시오. 프로젝트에서 사용하는 컴파일러입니다. Java 컴파일러에서 사용하는 jdk 버전과 Java 런타임 환경(jreJavaruntimeenvironment)이 일치하지 않기 때문에 발생합니다.

jdk가 1.7을 사용하고 jre가 1.8을 사용하는 경우 이 예외가 발생합니다. 이 예외는 낮은 버전의 컴파일러와 높은 버전의 실행 환경에서도 발생합니다.

해결책은 다음과 같습니다:

첫 번째: Java 컴파일러 및 jre 수정

1. eclipse-window-preference-java에 JRE 및 컴파일러를 설치했습니다. p>

2. 컴파일러는 설치된 JRE를 수정하여 실행 환경을 변경하는 것입니다. jre 버전이 jdk(컴파일러) 버전보다 높으면 상위 버전 환경이 하위 버전 프로그램과 호환되기 때문에 실행이 가능한 것은 당연합니다. 하지만 아니요, jdk1.8은 크게 수정되었습니다. 앞면이 높고 뒷면이 낮더라도 이 예외는 여전히 전송됩니다. 그래서 모두 버전 1.7로 수정했습니다.

컴파일러가 1.7로 변경되었습니다. 그림을 클릭해서 1.7로 변경한 후 오른쪽 하단에서 적용해 주세요.

3. jre를 1.7로 수정합니다. 아래 그림을 보면 컴퓨터에 jdk1.7이 설치되어 있습니다.

둘째: Tomcat 서비스 컨테이너의 JRE 수정

1. Tomcat은 Java 기반으로 작성된 서비스 컨테이너이므로 Java 실행 환경이 필요합니다. 사실 이는 개발자가 무시하기 쉽지만 이것이 더 중요합니다. 동적 웹 프로젝트는 궁극적으로 tomcat에서 실행되고 tomcat의 실행 중인 jre가 웹 프로젝트의 jre를 직접 결정하며 위 구성은 직접적으로 쓸모가 없기 때문입니다. , Tomcat을 사용하기 때문에 순수한 Java 프로젝트가 아닌 웹 프로젝트입니다.

Tomcat의 jre, window-Preferences-Server-Runtime Environments를 수정합니다. 컴퓨터에 두 개의 Tomcat 컨테이너(7과 9)가 설치되어 있습니다. 하나를 선택한 다음 편집합니다.

2. 편집은 구성을 의미하며 선택한 tomcat을 구성합니다. 다음은 구성 인터페이스입니다. jdk1.7을 선택하면 Finish가 됩니다. 이로써 java.lang.IllegalArgumentException 문제는 성공적으로 해결되었습니다.