티스토리 뷰
프로젝트를 개발하면서 현재 앱 버전을 확인하는 내용을 알아보려 합니다. 여기서는 Spring Boot 프로젝트와 React 프로젝트의 앱 버전을 알아보는 방법을 적어보도록 하겠습니다.
1. Spring Boot
스프링 프레임워크의 경우 Maven 을 사용할지 Gradle 을 사용할지 나뉘게 됩니다. 먼저 Maven 을 확인해보겠습니다.
Maven
가장 먼저 많이 사용하는 Maven의 버전 확인 방법입니다. pom.xml에 나와있는 version을 체크하는 방법으로 아래 스택오버플로우에도 나와있지만 버전을 확인하는 방법은 꽤나 많습니다. 가장 먼저 위에 것부터 확인해보도록 하겠습니다.
a. 1번째 명령어
./mvnw org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate \
-Dexpression=project.version
b. 2번째 명령어
mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec
쫌 복잡하긴 하지만 잘 됩니다.
Gradle
그래들의 경우 ./gradlew 내에 존재하는 명령어를 사용할 수 있습니다. 혹시나 운영 체제에 gradle 이 설치되어 있는 경우 gradle 명령어를 사용할 수 있습니다.
$ ./gradlew properties | grep ^version: | awk '{print $2}'
// gradle 이 설치된 경우
$ gradle properties | grep ^version: | awk '{print $2}'
또, 모듈이 있는 경우도 모듈의 버전을 가져오는 것이 가능합니다. 기본적으로 프로젝트 1개는 여러 개의 모듈을 지닌 구조로 구현할 수 있습니다.
$ ./gradlew ${module_name}:properties | grep ^version: | awk '{print $2}'
// gradle 이 설치된 경우
$ gradle ${module_name}:properties | grep ^version: | awk '{print $2}'
2. React
React 의 경우 package.json 파일 내에 있는 앱의 버전을 확인하는 2가지 방법이 있습니다. 기본적으로 Node.js 를 사용하는 것이다보니 NPM에 의존적입니다.
첫번째는 Node Package Manager 명령어를 활용한 방법입니다.
$ npm pkg get version
하지만 이러한 경우 (")가 양옆에 붙어서 출력되게 됩니다. 예를 들면 아래와 같습니다.
{
"name": "react-project",
"version": "2.1.1",
"private": true,
"dependencies": {
...
}
}
$ npm pkg get version // "2.1.1"
두번째는 Node 자체를 활용하는 방법입니다.
$ node -pe "require('./package.json')['version']"
그렇다면 출력되는 결과물은 더블쿼터(")가 제거된 모습으로 표현됩니다.
$ node -pe "require('./package.json')['version']" // 2.1.1
+Bonus
그리고 ChatGPT에게 물어본 결과
'Server' 카테고리의 다른 글
[Java] LinkedList 와 ArrayList 비교 (0) | 2023.06.06 |
---|---|
Spring Boot Test 클래스 생성법 (0) | 2023.05.30 |
[AWS] Error message: Unable to execute HTTP request: Connect to email.ap-northeast-2.amazonaws.com 에러 해결 로그 (1) | 2023.05.24 |
[MySQL] Insert Select 로 한 번에 쿼리 수행하기 (0) | 2023.04.27 |
[AWS] ACM + EC2 로드밸런서로 HTTPS 연결하기 (0) | 2023.04.26 |
[AWS] ECS 시작부터 모아보기 (2) | 2023.04.23 |