If this post was helpful to you, please leave a comment. :) Thank you!
자바 컴파일 (Java Compile - CMD)
: CMD 환경에서 사용자 클래스 패키지(package)를 참조하는 자바 사용자 클래스(user class) 컴파일하기
TestModel.java
package org.vvish.model;
public class TestModel {
public String getModel(String model) {
model = "Test" + model;
return model;
}
}
TestWeb.java
package org.vvish.web;import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.vvish.model.TestModel;
public class TestWeb extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
TestModel tm = new TestModel();
System.out.println(tm.getModel("doGet"));
}
}
2. cmd> cd e:\test
3. cmd> javac TestModel.java -d .
: -d 옵션을 주면, 현재 폴더에 패키지명으로 폴더를 생성한다. (E:\Test\org\vvish\model\TestModel.class)
--------------------------------------------------------------------------------------------------------------------------
4 cmd > javac TestWeb.java -d
: TestModel.java와는 다르게 package javax.servlet does not exist 에러가 발생한다. 이 때 -classpath 옵션을 사용하면 위 문제를 해결 할 수 있다. (javac.servlet은 servlet-api.jar에 포함)
4. cmd > javac -classpath E:\server\tomcat-8.0.36\lib\servlet-api.jar TestWeb.java -d .
: javax.servlet 에러는 사라졌지만, package org.vvish.model does not exist 에러가 발생한다.
위의 문제를 해결하기 위해선 TestModel.java와 TestWeb.java 파일을 한 번에 컴파일 해야한다.
4. cmd > javac -classpath E:\server\tomcat-8.0.36\lib\servlet-api.jar *.java -d .
: 실행하면 각 패키지 폴더에 TestModel.class, TestWeb.class 파일이 정상적으로 생성이 된다.
Comments
Post a Comment