본문 바로가기

빌드2

jar Build Task(Feat. thin/plain, fat/uber) + no main manifest attribute in ... 우선 프로젝트를 만들때 Spring initializer로 만들면 IDE가 배포 패키징(아카이빙)을 WAR로 할지, JAR로 할지 선택하라고 한다 그리고 의존성 관리는 Maven(Pom.xml)로 할건지, Gradle(build.gradle-Groovy)로 할건지도 선택하게 된다 일단 이 글에서는 Maven/Gradle, War/Jar의 차이보다는 전반적인 패키징에 대한 것, 그리고 plain-jar, not plain-jar가 무엇인지에 대해서 포스팅해보려고 한다 일단 나 그리고 우리 회사는 로컬에서 빌드 후 파일통신으로 jar를 올려서 돌리기때문에 서버에서 터미널로 빌드를 하지는 않는다 그리고 로컬에서 빌드할때는 빌드 Task의 build를 이용하기보단 bootJar를 이용한다(IntelliJ) 이제.. 2022. 9. 4.
Compile, Link, Build, Run (feat. C vs JAVA) 프로그램을 작성하다보면 컴파일 타임, 런타임이란 용어들을 접하고... 컴파일, 런타임을 검색하다보면 링크, 빌드, 바인드 이런 용어들도 접하게 된다 그럼 이제부터 과연 이게 무엇인지에 대해 알아보자! 나중에 내가 주로 개발하는 언어인 Java와 TypeScript에 대해 말하긴 할것이고, Java는 C#과 많이 비교되는 언어지만.. C언어부터 예로 들어 시작해보겠다 Compile - C언의 컴파일 과정 1. C언어로 프로그램을 만들기 위해선 .c 확장자를 갖고 있는 source file(소스파일)을 작성해야 한다 2. 컴파일을 거치기 전에 Preprocessing(전처리)과정을 거친다. 이 과정에서 #이 붙은 매크로나 전처리기를 해석하거나 해석하지 않거나 등을 선택하고 주석 등을 배제한다 3. 각 CPU.. 2022. 8. 7.