部署Java Web 專案之注意事項
阿新 • • 發佈:2018-12-09
上篇 Docker - 部署Java Web 專案記錄了使用docker如何搭建一個擁有java執行環境的docker映象。 這篇部落格記錄之前構建映象過程中遇到的一些問題。
這裡,在docker容器中,部署專案思路: 1.先git拉取最新程式碼 2.因為專案使用了maven進行包管理,並且是多模組。所以先每個模組分別打包 3.打包完成後,將最後的war包移動到tomcat中, 4.啟動tomcat
指令碼
run.sh
#kill -9 `lsof -i:8080 | sed -n "2, 1p" |awk '{print $2}'|uniq`
cd /opt/soft/git/client/qa/wybc-malls/
git pull origin master
echo ' pull over...'
cd /opt/soft/git/client/qa/wybc-malls/wybc-parent
mvn clean install
cd /opt/soft/git/client/qa/wybc-malls/wybc-common
mvn clean install
cd /opt/soft/git/client/qa/wybc-malls/wybc-manager
mvn clean install
cd /opt/soft/git/client/qa/wybc-malls/wybc-manager/wybc-manager-web
mvn clean package -Pqa
echo 'package over...'
kill -9 `lsof -i:8087 | sed -n "2, 1p" |awk '{print $2}'|uniq`
rm /opt/project_file/qa/malls.war
cp /opt/soft/git/client/qa/wybc-malls/wybc-manager/wybc-manager-web/target/malls.war /opt/project_file/qa/
echo `lsof -i:8087`
#kill -9 `lsof -i:8080 | sed -n "2, 1p" |awk '{print $2}'|uniq`
sleep 5
rm -rf /opt/tomcatqa/webapps/*
/opt/tomcatqa/bin/startup.sh > /dev/null 2>&1 &
echo `lsof -i:8087`
sleep 5
echo ' start over start over start over... start over... start over... start over... start over... start over... start over... start over... '
maven倉庫
1、關於本地倉庫的位置
預設位置: ${user.home}/.m2/repository
windows:C:\Documents and Settings\Administrator.m2
Linux:/root/.m2
問題
1、執行指令碼,在maven打包這一步,報了找不到jar包得錯
Failed to execute goal on project wybc-manager-service: Could not resolve dependencies for project com.wybc:wybc-manager-service:jar:0.0.1-SNAPSHOT: Could not find artifact com.alipay:sdk-java:jar:20170307171631 in central (https://repo.maven.apache.org/maven2)
阿里雲的alipay.jar包在maven的遠端倉庫中找不到。 解決思路: 方法1:修改maven的配置檔案,指定阿里雲的maven倉庫。 方法2:我本地是有這個jar包得,直接複製到伺服器對應的maven倉庫下。