본문 바로가기

분류 전체보기88

Linux nohup과 &의 역할 및 표준 출력과 표준 오류 파일 처리 Spring boot의 Jar를 리눅스 서버 또는 윈도우 bash에서 직접 실행하는 경우가 종종 있습니다.nohup java -jar 이름.jar & 명령어로 실행을 하는데 nohup과 &(엠퍼샌드)의 역할과 nohup 실행 시 표준 출력과 표준 오류 처리 방법이 궁금해서 정리를 했습니다.nohup과 &의 역할 및 하단 상황별 표준 출력과 표준 오류 파일 처리 방법을 정리했습니다.nohup.out 기본 생성표준 출력만 파일 생성표준 오류만 파일 생성표준 출력과 표준 오류 파일 모두 생성표준 출력과 표준 오류 파일 모두 생성 X nohup의 역할 - 세션 독립성nohup(no hang up)은 터미널 세션 종료 후에도 프로세스를 계속 실행하기 위한 명령어입니다.기본적으로 터미널을 닫으면 해당 세션에서 실행.. 2024. 11. 19.
React CRA 프로젝트 빌드(Webpack, Babel) React의 Create React App(CRA)는 빠르게 프로젝트를 시작할 수 있도록 도와주는 기능입니다.CRA로 만든 프로젝트에서 프로덕션 환경에 배포할 준비가 되면 npm run build 명령어를 통해서 최적화된 정적 파일을 생성합니다. 빌드 과정에서 핵심적인 역할을 하는 도구가 Webpack과 Babel입니다.npm run build 동작 과정과 Webpack과 Babel에 대해서 공부한 내용을 정리했습니다.맞지 않는 내용이나 추가적인 고견이 있으시면 댓글을 달아주시면 감사하겠습니다. npm run build 동작 과정1. 환경 설정빌드 과정이 시작되면 애플리케이션의 환경 설정이 production 모드로 전환됩니다.NODE_ENV=production이 설정되면, React와 관련된 개발 전용.. 2024. 11. 18.
Gradle에서 환경별 Nexus 설정 관리하기 Spring Boot로 백엔드 개발을 하면 빌드 도구로 Gradle을 많이 사용하고 gradle.properties라는 파일은 많이 보셨을 것 같습니다. 회사나 프로젝트마다 라이브러리 또는 넥서스를 관리하는 방법은 전부 다릅니다.해당 게시물에서는 넥서스가 개발, 테스트, 운영으로 각각 나눠져 있고 ip나 도메인이 다를 때 설정 파일을 환경별로 나눠서 사용하는 방법을 다루려고 합니다. ./gradlew 명령어로 빌드 수행 시에 프로젝트 설정 변수인 -Penv를 받아서 gradle-${env}.properties로 각 환경별 넥서스 정보를 불러오는 방법을 정리했습니다. 하단 목록은 환경별로 만들 gradle 설정 파일 이름과 환경별로 테스트에 사용하기 위한 넥서스 포트 번호입니다.환경별환경별(영어)환경별 설.. 2024. 11. 14.
Spring Batch initialize-schema 버전 별 설정 차이 Spring Batch에서는 총 6개의 메타 테이블이 존재합니다. Spring Batch의 메타 테이블은 스프링 배치를 실행하고 나서 Job, Step의 실행 이력을 추적이 가능하고 모니터링에도 사용이 가능합니다. 파라미터가 동일한 Job은 실행하지 않게 설정도 가능하고 실패 지점부터 재시작 기능도 제공을 해줍니다. Spring Batch 2.5.0 버전 미만은 application.yml에 spring.batch.initialize-schema 설정으로 메타 테이블 6개를 자동 생성해 줍니다. Spring Batch 2.5.0 버전 이상부터는 application.yml 설정이 spring.batch.jdbc.initialize-schema 설정으로 spring.batch 앞에 jdbc라는 문구가 추가.. 2024. 7. 6.
Gradle copyDependencies task 생성 및 사용 Gradle을 사용하면서 gradle의 dependencies로 사용하고 있는 의존성 jar들을 복사하는 방법과 task를 만들어서 진행하는 방법에 대해서 알아보겠습니다. Maven에서는 mvn dependency:copy-dependencies라는 방법을 통해서 target/ 영역에 사용하는 jar들을 다운로드할 수 있습니다.Gradle에서는 별도로 jar 복사하는 방법을 제공해주지 않아서 직접 task를 만들어야 합니다. 해당 포스팅에서는 gradle 버전을 7.5을 사용했습니다.Spring Boot + Gradle 프로젝트는 있다고 가정을 하고 진행하겠습니다.   build.gralde copyDependencies 추가copyDependencies task를 작성할려면 build.gradle에 3.. 2024. 4. 27.
Gradle Build Lifecycle Spring Boot를 사용할 때 Gradle을 사용하면 build 명령어를 사용해서 주로 jar를 만들고 사용하고 있었습니다.내부적으로 어떻게 동작을 해서 jar가 만들어지는 공부하기 위해서 Gradle Build LifeCycle을 공부한 내용을 정리해보려고 합니다. Gradle은 7.5 버전을 사용을 했고 하단 링크를 참고한 Gradle Build LifeCycle 링크입니다.https://docs.gradle.org/current/userguide/build_lifecycle.html  Gradle Task Graph(작업 그래프)Gralde은 task라는 단위로 작업을 나누고 작업을 실행하기 전에 작업 그래프를 작성을 합니다.Gradle build라는 태스크를 실행하면 DAG(방향성 비순환 그래.. 2024. 4. 27.