복붙노트

[SPRING] 스프링 부트에서 추가 클래스 패스를 설정하는 방법?

SPRING

스프링 부트에서 추가 클래스 패스를 설정하는 방법?

독립형 웹 응용 프로그램을 만들고 싶습니다. 스프링 부트에 문제가 있습니다.

내 응용 프로그램은 Spring Boot의 jar 파일 중 하나입니다.

하지만 내 응용 프로그램은 일반적으로 jdbc 드라이버 항아리가 필요했습니다. 내 응용 프로그램에 대한 jdbc 드라이버 항아리를 제외하고 싶습니다. lib 폴더에서 library jar를 읽고 싶습니다.

하지만 SpringBoot lib 폴더는 BOOT-INF / lib가 최종 정적입니다.

그래서 jdbc driver jar를위한 외부 classpath (lib)를 추가하고 싶습니다.

Spring Boot에서 추가 클래스 패스를 설정하는 법. 사용할 수 있습니까?

해결법

  1. ==============================

    1.스프링 부트에서 링크 아래 링크를 참조하십시오.

    스프링 부트에서 링크 아래 링크를 참조하십시오.

    https://docs.spring.io/spring-boot/docs/current/reference/html/executable-jar.html#executable-jar-property-launcher-features

  2. ==============================

    2.loader.path 매개 변수를 사용하여 외부 lib 폴더의 위치를 ​​정의 할 수 있습니다. 이 폴더 아래의 모든 jar는 classpath에 추가됩니다. 예를 들어, C : \ extLib을 외부 lib 폴더로 정의하려는 경우 다음을 수행 할 수 있습니다.

    loader.path 매개 변수를 사용하여 외부 lib 폴더의 위치를 ​​정의 할 수 있습니다. 이 폴더 아래의 모든 jar는 classpath에 추가됩니다. 예를 들어, C : \ extLib을 외부 lib 폴더로 정의하려는 경우 다음을 수행 할 수 있습니다.

    java -Dloader.path=/C:/extLib/ -jar aapName.jar
    

    이 기능을 사용하려면 PropertiesLauncher를 사용해야합니다. 이를 수행하는 데는 두 가지 방법이 있습니다.

    옵션 1

    프로젝트 pom.xml을 업데이트하고 다음 태그를 추가하십시오.

    <configuration>  <!-- added -->
      <layout>ZIP</layout> <!-- to use PropertiesLauncher -->
    </configuration
    

    효과적인 빌드 태그, 게시물 업데이트는 다음과 같습니다.

    <build> 
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>  <!-- added -->
                    <layout>ZIP</layout> <!-- to use PropertiesLauncher -->
                </configuration>
            </plugin>
        </plugins>
    </build>
    

    옵션 2

    명령 줄에서 응용 프로그램을 시작할 때 PropertiesLauncher를 사용하십시오.

    java -cp aapName.jar -Dloader.path=/C:/extLib/ org.springframework.boot.loader.PropertiesLauncher
    

    참고 문헌 : https://mash213.wordpress.com/2017/01/05/hack-how-2-add-jars-2-springboot-classpath-with-jarlauncher/

  3. from https://stackoverflow.com/questions/40499548/how-to-configure-additional-classpath-in-springboot by cc-by-sa and MIT license