2017-10-24 3 views
0

나는 gradle 종속성으로 다른 프로젝트로 끌어 당긴 항아리가 있습니다. HBase 용 XML 파일이 클래스 패스의 시작 부분에 있어야하므로 HBase 드라이버가로드 될 때 선택됩니다.jar 파일을 클래스 패스에 추가하는 방법은 무엇입니까?

jar 파일 내부에 있기 때문에 경로를 URLClassLoader로 전달하는 방법은 무엇입니까?

private static void addSoftwareLibrary(File file) throws Exception { 
    Method method = URLClassLoader.class.getDeclaredMethod("addURL", new Class[]{URL.class}); 
    method.setAccessible(true); 
    method.invoke(ClassLoader.getSystemClassLoader(), new Object[]{file.toURI().toURL()}); 
} 

하지만, 어떻게 것 :

  1. 이에 항아리 안에 파일의 위치를 ​​통과

    나는 내가 좋아하는 일을하여 클래스 경로에 추가 할 수 있습니다 알아?

  2. 경로에 추가하지 말고 앞에 추가 하시겠습니까?

답변

0
  1. 당신은 빌드시에 그것을 할 수 있습니다. 항아리 안에 포장하십시오.

  2. 출시 할 래퍼 스크립트를 만들 수 있습니다. 입력으로 일부 매개 변수를 가져오고 Java를 시작하기 전에 클래스 경로 항목을 조작합니다.