본문 바로가기

Backend/IDE

IntelliJ Spring Project(Maven) 생성(1)

반응형

STS사용이 불편하여 IntelliJ에서도 사용할 수 있게 개발환경을 맞추는 연습으로 시작하게 됨

참고 글

우선 프로젝트 디렉토리를 생성 후 개발환경 툴을 넣어둔다.(관리하기 편할듯 하여...)

 

IntelliJ에서 Project 생성으로 들어가 프로젝트명과 위치, JDK추가 등을 진행한다.

Name이 노란 표시가 된 이유는 빈 폴더가 아니라고 경고하는 것이다.

하지만 알고있으니 그냥 진행

JDK가 인식이 되었다면 그냥 선택해주면 되지만 아니라면 Add SDK로 직접 선택해 불러온다.

Catalog에 다운받은 Maven이 없기 때문에 추가해준다.

Archtype도 Add하여 설정해주어야 한다.

GroupId : org.apache.maven.archetypes
ArtifactId : maven-archetype-quickstart
Version : 1.1

추가된 모습이다. 이후 Create를 누르면 자동적으로 빌드를 수행하고 Build Success가 나오면 정상적으로 설치가 된것 이다.

 

Spirng Framework는 Community버전에서는 Add Framework Support 항목이 없어  수동으로 추가해주자 / 이왕 추가해 주는김에 TomCat도 Community에서는 제공되지 않아 Tomcat관련 플러그인을 별도로 설치해야 한다. Jetty가 경량화가 잘 되어 있다고 해서 한번 사용해 보려고 한다.

참고 글

<!-- pom.xml 세팅 -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>org.example</groupId>
  <artifactId>CloneProject</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>CloneProject</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <spring.framework.version>3.9.7.RELEASE</spring.framework.version>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
<!-- Spirng Framework -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>5.0.5.RELEASE</version>
    </dependency>

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-orm</artifactId>
      <version>5.0.5.RELEASE</version>
    </dependency>
<!-- JSP -->
    <dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>jsp-api</artifactId>
      <version>2.2</version>
      <scope>provided</scope>
    </dependency>
<!-- Servlet -->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <version>3.0-alpha-1</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
      <scope>runtime</scope>
    </dependency>
<!-- Jackson -->
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.9.5</version>
    </dependency>

  </dependencies>

  <build>

    <plugins>

      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.6.0</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
<!-- Jetty -->
      <plugin>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-maven-plugin</artifactId>
        <version>9.4.9.v20180320</version>
        <configuration>
          <httpConnector>
            <port>9080</port>
          </httpConnector>
          <scanIntervalSeconds>0</scanIntervalSeconds>
          <webApp>
            <contextPath>/</contextPath>
          </webApp>
        </configuration>
      </plugin>

    </plugins>

  </build>

</project>

의존성

spring-webmvc 5.0.5 – 스프링 MVC

jsp 2.2 – 표준 뷰 provided 옵션 사용

servlet 3.0 – webflux가 아니기 때문에 필요

jackson 2.9.5 – json 처리

 

빌드 옵션

maven compiler - 3.6 , java - SDK 1.8(10은 애노태이션 에러난다고 함)

jetty 9.4.9 – Jetty서버가 가볍고 편하다고 하니 한번 써보려함

 

여기까지 진행하면 서버를 올릴 준비가 반정도 되었다.

다음 글에서 Spring Framework를 구성하고 Jetty서버를 올리기 위한 추가 작업을 작성하겠다.

반응형

'Backend > IDE' 카테고리의 다른 글

Util 공부를 위한 Clone Project 생성  (0) 2023.09.07
STS4  (0) 2023.08.17
IntelliJ Spring Project(Maven) 생성(3)  (0) 2023.08.11
IntelliJ Spring Project(Maven) 생성(2)  (0) 2023.08.11
STS3 설치 작업  (0) 2023.07.25