달력

122024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

gdb 사용예제 #2

2008. 7. 14. 16:33

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

gdb 사용예제 #1

2008. 7. 14. 16:28

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

javac 옵션

java 2008. 7. 9. 22:49

http://blog.daum.net/turnnig-pointer/6936921

자바 컴파일과 실행 에 사용되어지는 javac, java 명령어의 옵션 을 다음과 같이 정리하였습니다.

javac - 자바컴파일러로써, 자바코드를 작성한 소스파일(.java)을 자바 가상머신이 인식할수 있는 바이트 코드(.class)
타입으로 변환시켜주는 명령어 입니다.

사용법: javac <options> <souce files>
예를들어, Hello.java, Greeting.java 두개의 파일이 존재한다면,
javac Hello.java Greeting.java
javac *.java (*을 사용해서, 모든 확장자가 .java인 파일을 컴파일할수 있다.)

 
1) 옵션:

a) -classpath:
 -classpath(cp) path(파일 절대 경로):
 컴파일러가 컴파일 하기 위해서 필요로 하는 참조할 클래스 파일들을 찾기 위해서 컴파일시 파일 경로를 지정해주는
옵션. 예를 들어,  Hello.java파일이 C:\Java 디렉터리에 존재하고, 필요한 클래스 파일들이 C:\Java\Engclasses에 위치한다면,
javac -classpath C:\Java\Engclasses C:\Java\Hello.java 로 해주면 된다. 만약 참조할 클래스 파일들이 C:\Java\Engclasses외의
다른 디렉터리에도 존재한다면, C:\Java\Korclasses 일경우,
javac -classpath C:\Java\Engclasses;C;\Java\Korclasses C:\Java\Hello.java
그리고, 현재 디렉터리역시 포함하고 싶다면,
javac -classpath .;C:\Java\Engclasses;C;\Java\Korclasses C:\Java\Hello.java
기본적으로, dos에서는 .는 현재 디렉터리를 의미하고, ..는 현재 디렉터리의 상위디렉터리를 의미한다.
또한 classpath 대신 단축어인 cp를 사용해도 된다.
javac -cp C:\Java\Engclasses C:\Java\Hello.java 

 
b) -d:
 -d directory
 클래스 파일을 생성할 루트 디렉터리를 지정합니다.
기본적으로 컴파일러는 -d옵션을 주지 않으면, 소스파일이 위치한 디렉터리에 클래스 파일을 생성시킵니다.
예를 들어,  Hello.java파일이 C:\Java 디렉터리에 존재하고 클래스 파일의 루트디렉터리를 C:\Java\Classfiles라고 하면,
javac -d C:\Java\Classfiles C:\Java\Hello.java 입니다.

만약 -d 옵션을 사용하려고 하는데, 루트디렉터리(위예에서는 C:\Java\Classfiles) 가 존재 하지 않는다면,
"The system cannot find the path specified"라는 에러 메시지를 보게 됩니다.
현재 작업 디렉터리가 C:\Java\Classfiles 에 위치하면,
javac -d .\Classfiles Hello.java 와 같이 상대 디렉터리로 표현할수 있습니다.

 
c) -encoding:
-encoding encoding name
소스 파일에 사용된 문자열 인코딩을 설정합니다.
만약 위옵션이 설정되어 있지 않으면, 플래폼의 기본적인 컨버터가 사용되어 집니다.

 
d) -g:
모든 디버깅 정보를 생성시킵니다.
만약 위옵션이 설정되어 있지 않으면, 기본적으로, 라인넘버만 생성시킵니다.
-g:none: 디버깅 정보를 전혀 생성 시키지 않습니다.
-g:{lines, vars, source}:
위처럼 명시적으로, 몇몇 디버깅 정보를 생성시킬수 있습니다.
lines은 라인정보, vars는 지역변수, sounce는 소스 파일 정보를 나타냅니다.

 
e) -nowarn:
경고 메시지 (warning message)를 생성시키지 않습니다.
 
f) -verbose:
컴파일러와 링커가 현재 어느 소스파일이 컴파일되고 있고, 어느 파일이 링크되고 있는지
그정보를 출력한다.

 
h) -deprecation:
소스 코드내에서, 사용되어진 deprecated API의 위치 를 출력 합니다.
ex)
C:\Java> javac World.java
Note: World.java uses a deprecated API. Recompile with "-deprecation" for details
.
1 warning
C:\Java> javac -deprecation World.java
World.java:52: Note: The method java.awt.Dimension size() in class java.awt.Compon
ent has been deprecated.
Dimension d = size();

Note: World.java uses a deprecated API. Please consult the documentation for a be
tter alternative.

 
i) -sourcepath:
-sourcepath 소스패스
소스파일의 위치를 지정합니다.
 
j) -target:
-target 자바버젼
지정된 자바버젼의 VM에서 작동 되어지도록 클래스파일을 생성 시킵니다.
1.1
jvm 1.1 버젼에서 호환되어질수 있는 클래스 파일생성
1.2
jvm 1.2 버젼에서 호환되어질수 있는 클래스 파일생성
1.3
jvm 1.3 버젼에서 호환되어질수 있는 클래스 파일 생성

ex)
javac -target 1.2 Helloworld.java
 
k) -bootclasspath 패스:
특정한 bootstrap또는 확장 클래스를 지정할수 있다.
기본적으로, 자바컴파일러는 javac(컴파일러명령)이 설치된 플래폼의 bootstrap과 확장클래스들을 통해서, 컴파일작업을 수행하지만,
bootclasspath 옵션을 사용하면, cross-compiling이라고 해서, 다른 자바플래폼의 bootstrap과 확장클래스들을 통해서, 컴파일 할수 있는 기능을 지원한다.
예를들어,
javac -target 1.1 -bootclasspath jdk1.1.7/lib/classes.zip -extdirs "" OldCode.java
컴파일러에게 현재 자신의 bootstrap을 사용하지 말고, jdk1.1.7/lib/classes.zip bootstrap클래스들을 사용해서 컴파일 하라고
명령하는것이다.
참고로, 모바일자바에서, 모바일폰에 설정된, jvm에 맞도록, 소스코드를 컴파일하기 위해서, 주로 사용되어지는 옵션이다.

 
l) -extdirs 디렉터리:
특정한, 확장 디렉토리를 지정한다.cross-compiling시 주로, 사용되어지는 옵션이면, 각디렉터리들은 콜론(:)에 의해서, 분리되어진다.
컴파일시, 기술한 디렉터리의 클래스 파일을 참조한다.

'java' 카테고리의 다른 글

HTTPClient 3.0  (0) 2008.07.25
URLConnection 와 HTTPClient  (0) 2008.07.25
IBM HOST CICS Transaction 연동 (NT) - 자바서비스넷  (0) 2008.07.03
jad 옵션  (0) 2008.06.05
NIO FileCopy  (0) 2008.05.15
Posted by 알 수 없는 사용자
|

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.


제목 : Re: IBM HOST CICS Transaction 연동(NT)
글쓴이: 이원영(javaservice) 2000/08/27 16:14:16 조회수:836 줄수:17
COM SERVER에 대해선 자세해 알고 있지는 않습니다만, 자바와 CICS의 연동은 IBM제품군으로
볼 때, CTG(CICS Transaction Gateway)를 사용하는 것이 표준적인 방법인것으로 알고
있습니다. COMM SERVER를 이용할 경우, 자바 API를 제공하는 지 모르겠습니다.
만약 C API만 제공한다면 또다시 별도의 JNI를 이용하거나 PIPE STREAM 방식으로 이용하여
별도의 Adaptor 를 만들어야 할 것입니다.
최근 금융권을 중심으로 IBM HOST의 LU 자원을 Access하기 위해 위처럼 JNI 혹은
PIPE Stream 방식으로 Adapter를 직접만들어 연동하는 모습이 광범위하게 사용되고
있기는 하나, 엔지니어의 입장에서 보면, 바람직한 모습이 아닙니다.

CTG는 NT용도 있습니다. UNIX BOX에서와 완전히 동일한 개념입니다.
가격이나, 다른 요인에 의한 것이 아니라면 "정도"의 길을 가길 바랍니다.

================================================
  자바서비스넷 이원영
  E-mail: javaservice@hanmail.net
  PCS:019-310-7324
================================================
 
제목 : Re: IBM HOST CICS Transaction 연동(NT)
글쓴이: javarian(javarian) 2000/08/30 20:36:31 조회수:665 줄수:28
비슷한 프로젝트를 수행한 경험이 있어 글을 올립니다.

WAS상의 Java Servlet과 IBM HOST상의 CICS Server 프로그램이 서로 상호 작용하기 위해서는
앞서 말씀하신 CTG(CICS Transaction Gateway)와 CommServer(Communication Server)가
둘다 필요한 것으로 알고 있습니다.

CTG는 CICS Client모듈까지 포함하고 있으며, 이를 이용하여 Java Servlet에서 CICS Client
까지 byte array(commarea)를 전달할 수 있습니다. 
CommServer는 이러한 작업과는 별개로 통신상의 문제를 해결하기 위해 사용합니다. 즉, 
CICS Client와 CICS Server사이의 SNA protocol을 지원하기 위하여 사용하는 것입니다.

주로 NT상에 WAS와 Servlet, CTG, 그리고 CommServer를 설치하며,
웹 브라우저에서 사용자가 입력한 정보를 바탕으로 WAS 기반에서 수행되는 Servlet에서
정보를 가공하고, CTG를 이용하여 CICS Client 모듈까지 CommArea영역을 전달하면,
CommServer는 TCPIP protocol -> SNA protocol로 전환하여 CICS Server 프로그램에
이를 전달합니다.

AIX와 같은 UNIX에는 이러한 역할을 하는 모듈이 몇개 있는것으로 알고 있으며,
NT 에서는 정식제품으로 IBM의 Communication Server(통신서버), MS의 SNA Server가 
있습니다.

SNA에 정통한 엔지니어가 아니면, 이를 구현하기 힘들것이고,
설사 이와 유사한 것을 구한다 하더라도, 분명히 OPEN후 여러가지 문제가 발생할 것으로
봅니다. 검증된 제품을 사용하는 것이 좋을듯 싶군요.

도움이 되었나요..?

'java' 카테고리의 다른 글

URLConnection 와 HTTPClient  (0) 2008.07.25
javac 옵션  (0) 2008.07.09
jad 옵션  (0) 2008.06.05
NIO FileCopy  (0) 2008.05.15
jdk 1.5 패키지 확장  (0) 2008.05.15
Posted by 알 수 없는 사용자
|

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.