jar 파일 클래스 클래스를 수행하는 자바 패키지

환경 :

1. 리눅스

2. 같은 디렉토리에 두 개의 자바 클래스, A.java 및 B.java, 모두가 있습니다

 

두 번째 출처 :

A.java

  1.  
    패키지 com.abc;
  2.  
    공공 클래스 {
  3.  
    공공 정적 무효 시험 () {
  4.  
    에서 System.out.println ( "A : 시험 ()");
  5.  
    }
  6.  
    }

B.java

  1.  
    com.abc.A 량;
  2.  
    공공 클래스 B {
  3.  
    공공 정적 무효 메인 (문자열 []는 argc) {
  4.  
    A A = 새로운 A ();
  5.  
    시험();
  6.  
    }
  7.  
    }

III. 컴파일 및 실행

  1.  
    # 컴파일러
  2.  
    javac의는 -d. A.java B.java
  3.  
     
  4.  
    # 실행
  5.  
    자바 B
  6.  
     
  7.  
    # 출력
  8.  
    A : 시험 ()

IV. 아니 같은 디렉토리에

 각 파일의 미리 연결하려면 (make_file (내용) : COM / filetool / 폴더의 유틸리티 / A.java 
COM / filetool / 주 / B.java)

javac -source 1.7 -target 1.7 -d $APP_HOME/code/ecs/bin -encoding UTF-8 @$MAKE_FILE

 

 

II.

항아리 패키지 클래스 파일, 어떻게 도스 명령 줄을 실행하려면?

내가 메인 클래스 항아리 패키지를 실행하지 않으면,
나는 또 다른 항아리가 클래스 패키지 파일을 실행합니다.
다음과 같이 내용은
DIST 
config.xml에
SendMessage.jar
내가 명령 줄에서 호출 Test.class라는 파일에 SendMessage.jar을 실행하려면이 실현 경우, 포장을하지 않습니다.
cmd를 입력합니다
당신이 SendMessage.jar 어디 디렉토리에
자바를 실행 -cp SendMessage.jar Test.class라는

Test.class라는 패키지 이름이있는 경우, 다음

자바 -cp SendMessage.jar mypackagename.Test.class
 
 
 
III.
받는다는 통해 응용 프로그램 표시된 항아리 패키지 후, 항아리는 자바 -jar ***에 의해 수행 될 수있다, 실행의 주요 방법 MANIFEST.MF 주요 방법은 지정된 주로 지정, 시간의 여러 주요 방법이 있다면 그렇게 실행하는 다음 명령에 의해 지정된 메인 메소드 실행 방법 

-classpath **** 자바. JAR을 **** ****. 클래스 명 [인수] 
**** 본원. **** 수단 패키지 이름입니다; 

**** 클래스 이름이 클래스 이름 ;. 

손가락에 전달 된 인수 매개 변수; 

요약 : 두 가지 사례이다 항아리를 실행 

MANIFEST.MF에 의해 지정된 주요 포장 방법 후 1> 받는다는 

자바 항아리 서비스 - 항아리 Mplus -with-dependencies.jar 
 받는다는 경우에는 주요 방법의 pom.xml 지정하려면 다음 코드를 추가 할 수 있습니다 

<빌드> 
    <플러그인> 
      <플러그인> 
        <의 groupId> org.apache.maven.plugins </를의 groupId> 
        <artifactId를> 조립 - 플러그인 - 메이븐 </를 artifactId를> 
        <버전> 2.3 </ 버전> 
        <구성> 
          <appendAssemblyId>거짓 </ appendAssemblyId>
          <descriptorRefs> 
            <descriptorRef> 항아리-와 의존성 </ descriptorRef> 
          </ descriptorRefs> 
          <아카이브> 
            <매니페스트> 
              <addClasspath> 진정한 </ addClasspath> 
              <classpathPrefix> lib 디렉토리 / </ classpathPrefix> 
              <mainClass> io.test.main .MainOfDiskMount </ mainClass> 
            </ 매니페스트> 
          </ 아카이브> 
        </ 구성> 
        <실행> 
          <실행> 
            <ID> 메이크업 조립체 </ ID> 
            <위상> 패키지 </ 위상> 
            <목적>
              <목표> 조립 </ 목표> 
            </ 목표>
  
          </ 실행> 
        </ 실행> 
      </ 플러그인> 
    </ 플러그인> 
  </> 빌드 
주로 내부 코드 블록 mainfest 상기 메인 메소드 mainClass에 지정된 패키지 명 + 클래스 이름을 실행; 받는다는 패키지 명령을 지정이 볼 수있는 패키지 메타-INF MANIFEST.MF에있는 항아리는 콘텐츠의 내용을 추가 



우리는 pom.xml 파일에 지정된 주요 방법이있다, 당신은 매개 변수를 추가 할 경우, 다음 항아리 실행 시간에 패키지를, 그 뒤에 직접 추가 그것은, 

JAR-와-AAA-BBB의 dependencies.jar -jar 자바 - 서비스 - Mplus 
 

MANIFEST.MF에 지정되지 않은 경우 2>의 주요 방법의 복수 항아리, 실행 명령은 특정 주요 방법 지정 

자바 - CP의 mplus 서비스 항아리-와 -dependencies.jar com.smbea.dubbo.bin.Console의 AAA BBB의 
 

다음 논리 인쇄 추가 주요 방법은 실행 상황 파라미터 



실제로 AAA, 인수로서 BBB 값인 그것으로 전달 된 매개 변수; 

요약 : JAR로 포장 받는다는 항목은, 두 개의 경우가 있으며, 주요 방법을 실행, 하나는 MANIFEST.MF 실행에 지정된 주요 방법이며, 다른 하나는 명령 행 마이에서 실행되도록 지정 패킷 n의 방법 및 주요 방법에 대응하는 송신 파라미터를 추가 할 수있다;

  

추천

출처www.cnblogs.com/SunshineKimi/p/11306519.html