khstar

OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended 본문

개발/JAVA

OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended

khstar 2023. 12. 23. 20:00
반응형

Jdk를 8 -> 17로 올린 후에 제목과 같은 에러가 발생했습니다.

OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended

내용을 찾아 보면 JDK 1.8 이후에 추가된 기능으로 클래스 로딩 시 Class Data Sharing(CDS) 기능을 사용하면 발생한다고 합니다.

오류가 아니고 경고 메시지로 무시해도 된다고는 하는데 아무래도 신경이 쓰여서 찾아봤습니다.

 

1. IntelliJ에서 셋팅하는 방법입니다. 저는 Maven build시에 발생하는데 적용이 안됐습니다.

IntelliJ에서는 Settings -> Build, Execution, Development -> Debgger -> Async Stack Tarces 에서 

Instrumenting agent(requires debugger restart)를 체크해제 하면 된다고 하는데 저는 안됐습니다.

 

2. VM Opttion으로 -Xshare:off 옵션을 사용하여 CDS 비활성화 하는 방법이 있다고 하는데 역시나 적용 안됐습니다.

 

3. 마지막으로 찾은 것은 아래의 maven plugin을 추가하는 것이었습니다. 

저는 아래의 Plugin을 추가하니 해당 메시지가 삭제 되었습니다.

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>3.2.1</version>
    <configuration>
        <argLine>-Xshare:off</argLine>
        <parallel>all</parallel>
    </configuration>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-failsafe-plugin</artifactId>
    <version>3.2.1</version>
    <configuration>
        <argLine>-Xshare:off</argLine>
    </configuration>
    <executions>
        <execution>
            <goals>
                <goal>integration-test</goal>
                <goal>verify</goal>
            </goals>
        </execution>
    </executions>
</plugin>

 

해결은 되었으니 정확히 어떤 이유로 해결됐는지는 모르겠습니다.

정확한 해결 이유를 아시는 분은 댓글 부탁드립니다.

 

참고/참조 :

https://www.inflearn.com/questions/917150/openjdk-64-bit-server-vm-warning

https://stackoverflow.com/questions/54205486/how-to-avoid-sharing-is-only-supported-for-boot-loader-classes-because-bootstra

https://stackoverflow.com/questions/77512409/adding-xshareoff-jvm-arg-break-jacoco-maven-plugin-setup

반응형
Comments