애플리케이션을 배포하기 위해 bash 스크립트를 생성하려고 합니다. 배포하기 전에 Maven을 사용하여 애플리케이션을 빌드해야 합니다. 문제는 Maven 빌드가 완료되면 다음 명령이 호출되지 않는다는 것입니다. Maven이 추가 실행을 종료하기 위해 신호를 보내는 것 같습니다.
예를 들어, 다음 스크립트에서는 Hello world
표준 출력이 작성되지 않습니다.
#!/bin/sh
exec mvn -DskipTests -Darguments=-DskipTests clean install
echo "Hello world"
이 제한을 우회할 수 있는 방법이 있나요?
답변1
exec
Maven을 호출하는 명령줄에서 제거하면 됩니다.
이 exec
명령은 쉘을 실행 중인 명령으로 대체하므로 쉘은 더 이상 존재하지 않으며 해당 행 이후에는 아무것도 실행되지 않습니다(명령 시작이 실패하지 않는 한).
쉘을 원한다면 exec
외부 명령을 생성하는 데 사용하지 마십시오.