[1] 컴파일 플러그인으로 JDK 버전 변경하기
: pom.xml에 플러그인 추가
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
// jdk업데이트 정도는 아래의 property 만으로도 가능하나 자세한 속성은 플러그인을 사용해야한다
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
[2] 자바파일을 웹프로젝트로 변경
: maven은 자바파일과 웹프로젝트로 오갈수 있도록 하는 허브역할 (pom.xml 설정을 통해서)
: pom.xml에서 packaging을 jar ▶ war로 변경하면 web.xml을 설정해달라는 오류창이 뜬다.
web.xml is missing and <failOnMissingWebXml> is set to true
: 톰캣이 가진 xml을 web-app - WEB-INF(생성) 안에 넣어주고 실행시킨 후 서버를 톰캣으로 설정. html파일을 넣어서 실행하면 웹에서 실행된다.
[3] 라이브러리 설정
: jsp파일 생성시 나타나는 오류문구
The superclass "javax.servlet.http.HttpServlet", determined from the Dynamic Web Module facet version (2.5), was not found on the Java Build Path
👉 Build Path 즉, 라이브러리를 설정해달라.
👉 pom.xml에 설정해두면 원격 라이브러리에있는 플러그인 자료를 로컬에 저장해두고 사용한다. 이때 maven을 사용하는 여러 prj가 같은 local repository를 사용하므로 프로젝트마다 다운받을 필요도 없다.
이때 maven은 ${user.home}/.m2/repository 라는 폴더를 만들어 플러그인들을 두고 사용한다.
* maven repository
👉 그냥 jsp를 검색해서 받지 말고 tomcat jsp로 검색해서 받으면 내가 가진 톰캣 버전에 맞는 jsp lib를 받을 수 있다.
👉 jar파일을 다운받으면 기존처럼 buildpath에 파일을 추가해서 설정할 수 있지만 (연결된 api를 계속해서 찾아서 다운받아 설정해야 한다), 우리는 maven을 사용하고 있으므로 dependency를 카피해서 pom.xml에 설정해주면 된다.
3-1) 라이브러리 오류 문제
: 라이브러리 다운로드시 링크가 깨지거나 오류가 발생하는 경우가 종종 있음
: 해당 lib안에 패키지 파일이 확인안되는 경우 라이브러리가 깨진것.
👉 이클립스 닫기 - c드라이브 > 자신의 아이디 > m2 > repository 안의 파일을 모두 삭제 - 이클립스를 다시 열면 사용하는 라이브러리는 다시 다운로드되기 시작한다.
* apache maven plugin war 이 없다고 pom.xml에서 자꾸 오류가 떠서 (jar플러그인만 있어서 그런듯), 플러그인을 추가해줬다.
https://maven.apache.org/plugins/maven-war-plugin/usage.html
Apache Maven WAR Plugin – Usage
Usage There are 4 ways to use the WAR Plugin: using the package phase with the project package type as war invocation of the war:war goal invocation of the war:exploded goal invocation of the war:inplace goal Note: When using the war: goals it is assumed t
maven.apache.org
'🔥 Vamos > Spring' 카테고리의 다른 글
0526 | Spring (2)-DI // 값형식DI, 생성자DI, @Autowired, @Qualifier, required옵션 (0) | 2023.05.26 |
---|---|
0525 | Spring (1)-DI // 스프링, DI, IoC 컨테이너, 지시서작성 (0) | 2023.05.25 |
0524 | Maven (1) // 메이븐 개념, build lifecycle (0) | 2023.05.24 |
0226 | 스프링의 정석 :: 4-3 (게시판 페이징) (0) | 2023.02.27 |
0219 | 스프링의 정석 :: 4-2 (DTO) (1) | 2023.02.19 |