as-package.sh support maven wrapper and auto extract project version. #39

pull/48/head
hengyunabc 6 years ago
parent 163b28e6da
commit cc1446b8a2

@ -16,9 +16,28 @@
### 安装到本地
本地开发时,可以执行`as-package.sh`来打包会自动安装最新版本的arthas到`~/.arthas`目录里。debug时会自动使用最新版本。
本地开发时,推荐执行`as-package.sh`来打包会自动安装最新版本的arthas到`~/.arthas`目录里。debug时会自动使用最新版本。
也可以直接 `mvn clean package -DskipTests`打包生成的zip在 `packaging/target/` 下面
`as.sh`在启动时,会对`~/.arthas/lib`下面的目录排序,取最新的版本。`as-package.sh`在打包时,会取`pom.xml`里的版本号,再拼接上当前时间,比如: `3.0.5.20180917161808`,这样子排序时取的就是最新的版本。
也可以直接 `./mvnw clean package -DskipTests`打包生成的zip在 `packaging/target/` 下面。但是注意`as.sh`启动加载的是`~/.arthas/lib`下面的版本。
### Debug
Arthas启动过程分为两部分
1. 执行`com.taobao.arthas.core.Arthas`查找到合适的jvm然后attach上面。如果想debug这部分代码可以直接
```
./as.sh debug pid
```
JPDA端口是`8888`然后可以远程连接来debug。
如果启动时等待,则
```
JPDA_SUSPEND=y ./as.sh debug pid
```
1. attach成功之后arthas agent运行目标进程里。想要调试agent的代码则需要目标进程本身是以debug方式启动的。可以直接引入arthas的source打断点
### 全量打包
@ -29,7 +48,7 @@
* 全量打包时需要配置下面的参数目前只支持mac/linux
```
mvn clean package -DskipTests -P full -Dsphinx.binUrl=https://github.com/hengyunabc/sphinx-binary/releases/download/v0.4.0.1/sphinx.osx-x86_64
./mvnw clean package -DskipTests -P full -Dsphinx.binUrl=https://github.com/hengyunabc/sphinx-binary/releases/download/v0.4.0.1/sphinx.osx-x86_64
```

@ -2,7 +2,12 @@
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
CUR_VERSION="3.0.3"
get_local_maven_project_version()
{
$DIR/mvnw org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -e '^[^\[]' | cut -b 1-5
}
CUR_VERSION=$(get_local_maven_project_version)
# arthas's version
DATE=$(date '+%Y%m%d%H%M%S')
@ -24,10 +29,11 @@ exit_on_err()
exit ${1}
}
packaging_bin_path="$(ls ${DIR}/packaging/target/arthas-*-bin.zip)"
# maven package the arthas
mvn clean package -Dmaven.test.skip=true -f $DIR/pom.xml \
$DIR/mvnw clean package -Dmaven.test.skip=true -f $DIR/pom.xml \
|| exit_on_err 1 "package arthas failed."
rm -r $DIR/core/src/main/resources/com/taobao/arthas/core/res/version

@ -10,7 +10,7 @@ Arthas 支持在 Linux/Unix/Mac 等平台上一键安装,请复制以下内容
curl -L https://alibaba.github.io/arthas/install.sh | sh
```
上述命令将会下载的启动脚本文件 `as.sh` 到当前目录,你可以放在任何地方或将其加入到 $PATH 中。
上述命令将会下载的启动脚本文件 `as.sh` 到当前目录,你可以放在任何地方或将其加入到 `$PATH` 中。
直接在shell下面执行`./as.sh`,就会进入交互界面。

Loading…
Cancel
Save