我想使用init.d(服務器是Redhat 5.9)將我的基於Spring引導的應用程序作爲服務運行。運行彈簧引導罐作爲服務時出現意外令牌附近的語法錯誤
當運行service myapp start
或/etc/init.d/myapp start
,我得到以下錯誤:
/etc/init.d/myapp: line 168: syntax error near unexpected token `>'
/etc/init.d/myapp: line 168: ` $command &>> "$log_file" &
我跑sh -x /etc/init.d/myapp status
,看看發生了什麼,但它並沒有幫助我很多。這是輸出的最後一部分:
+ PID_FOLDER=/var/run/myapp
+ pid_file=/var/run/myapp/myapp.pid
+ log_file=/app/myapp//myapp.log
++ id -u
+ [[ 0 == \0 ]]
++ awk '{print $3}'
++ ls -ld /app/myapp/myapp-server-0.0.1-SNAPSHOT.jar
+ run_user=myapp
+ [[ -n /usr/java/default ]]
+ [[ -x /usr/java/default/bin/java ]]
+ javaexe=/usr/java/default/bin/java
+ command='/usr/java/default/bin/java -Dsun.misc.URLClassPath.disableJarChecking=true -jar /app/myapp/myapp-server-0.0.1-SNAPSHOT.jar '
/etc/init.d/myapp: line 168: syntax error near unexpected token `>'
/etc/init.d/myapp: line 168: ` $command &>> "$log_file" &'
我有一個.conf
文件旁邊,我的罐子,以及:
[[email protected] myapp]# cat myapp-server-0.0.1-SNAPSHOT.conf
MODE=service
LOG_FOLDER=/app/myapp/
JAVA_HOME=/usr/java/default
我使用Spring 1.3.1啓動
更新: 我降級到Spring Boot 1.3.0並開始工作:
[[email protected] ~]# service myapp start
which: no start-stop-daemon in (/sbin:/usr/sbin:/bin:/usr/bin)
Started [19564]
你爲什麼不使用Spring Boots集成了[init腳本](http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#deployment-service)? –
這就是我正在使用的。我創建了一個從'/etc/init.d/myapp'到'/ apps/myapp/myapp-server-0.0.1-SNAPSHOT.jar'的符號鏈接。 –