'냥냠대' 서버 개발&배포 일기 - 1

한태민·2022년 1월 6일
0
post-thumbnail

회고 작성이후 너무 바빴던 것 같다. 졸업 준비도 하고 경진대회 참가도 해야했고...(장려상 받았다. ㅎㅎㅎㅎㅎㅎ)

늦었지만 졸업도 얼마 안남았기도 하고 이제 새로운 기능을 릴리즈 하기 위해 준비를 해야한다.

먼저 많은 관심을 가져주신 분들에게 너무 감사하다는 말씀을 드리고 싶다.

이번주 트렌딩에 올라갈 줄은 상상도 못했다... 앞으로도 더 열심히 공부하라는 관심으로 받아들여졌다.

사담은 이쯤에서 끝내고 이제 서버 배포를 준비하자

개발 환경은 대충 다음과 같다.

IntelliJ IDEA에서 개발을 했고 maven 프로젝트로 생성 하였다.
Java JDK16
Spring 2.6.x
...

먼저 Java 배포는 처음이라 꼼꼼히 확인하면서 진행했다.

배포 방법은 JAR 혹은 WAR이 가능 하며 차이점은 JAR에서는 Tomcat이 내장되어 쉽게 배포 할 수 있고 WAR는 따로 실행 시켜야 한다.

그래서 쉽게 할 수 있는 JAR로 배포 하기로 한다.

먼저 배포 형식을 지정한다.

<package>jar</package> 을 추가한다.

그리고 우리는 JAR로 배포하기 위해 Tomecat을 내장하도록 하자

의존성 추가를 했다면 이제 우측에 있는 Maven을 클릭

아래 사진과 같이 프로젝트 -> 수명주기 -> Package를 실행한다.

하고 이제 실행을 하면?

org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137), 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:210), 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156), 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148), 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117),
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81), 
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56),
org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128), org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305), org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192), 
org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105), org.apache.maven.cli.MavenCli.execute(MavenCli.java:957), org.apache.maven.cli.MavenCli.doMain(MavenCli.java:289), 
org.apache.maven.cli.MavenCli.main(MavenCli.java:193), 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method), 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78), java.base/jdk.internal.reflect.DelegatingMethodAccessorImp
l.invoke(DelegatingMethodAccessorImpl.java:43), 
java.base/java.lang.reflect.Method.invoke(Method.java:567), org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282), 
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225), org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406), 
org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347), org.codehaus.classworlds.Launcher.main(Launcher.java:47)]


하지만 그냥 쉽게 될 프로그래밍이 아니다. 이젠 놀랍지도 않다.

처음보는 오류가 있어서 이것저것 만져봤지만 해결되지는 않았다.

검색을 통해 명령어를 추가 하던가 다른 의존성 검사등을 해보았지만 딱히 해결되는 문제는 아니였다. 아무래도 이번주는 이걸 붙잡고 해결해야 할 것 같다.

profile
BackEnd Devloper

0개의 댓글