springXD模块删除命令不删除上传的.jar文件
SpringXD module delete command does not delete the uploaded .jar file
问题
SpringXD 的模块删除命令正在从 SpringXD DIRT 中删除模块(模块列表命令不显示删除模块),但不会删除 /xd/custom-modules/job 目录中上传的 .jar 文件。原因是即使在部署的模块从 SpringXD DIRT 中删除后,.jar 文件仍被 java 进程使用。如果我重新启动管理员和容器,我可以删除文件。
使用带有 --force 选项的模块上传命令会导致以下错误:
java.lang.IllegalArgumentException: Could not install Uploaded module
'job:ang-im-job' at location file
[C:\install_dir\xd\custom-modules\job\batch-job.jar]
as that file already exists
我正在使用 SpringXD 1.2 和 Windows 7. 这与 OS 有关吗?
以下是脚本,我将对它们进行参数化并与自动化部署工具集成,以便可以使用相同的脚本在 SpringXD DIRT 中部署模块。
upload_module.bat
set
ASSEMBLY_PATH=C:\path_to_assembly\batch-job-01.00.00.00-SNAPSHOT.jar
set MODULE_NAME=batch-job
set MODULE_TYPE=job
cd %XD_INSTALL_DIR%\shell\bin\
xd-shell module upload --force --file %ASSEMBLY_PATH% --name
%MODULE_NAME% --type %MODULE_TYPE%
deploy_job.bat
set MODULE_NAME=batch-job
set DEPLOY_JOB_NAME=batch-job
cd %XD_INSTALL_DIR%\shell\bin\
xd-shell job create --name %DEPLOY_JOB_NAME% --definition
"%MODULE_NAME%" --deploy
destroy_job.bat
set DEPLOY_JOB_NAME=batch-job
cd %XD_INSTALL_DIR%\shell\bin\
xd-shell job destroy --name %DEPLOY_JOB_NAME%
delete_module.bat
set MODULE_NAME=batch-job
cd %XD_INSTALL_DIR%\shell\bin\
xd-shell module delete --name job:%MODULE_NAME%
OS 有问题。在 Windows 上,模块删除命令在从 SpringXD DIRT 环境中删除后不会删除 .jar 文件。 Linux.
上没有此类问题
在我的例子中,虽然 XD shell 说了下面的错误,但我没有在 admin-ui
中看到该模块
xd:>module delete --name job:reverseJob
Command failed org.springframework.xd.rest.client.impl.SpringXDException: Could
not delete module 'job:reverseJob'
问题
SpringXD 的模块删除命令正在从 SpringXD DIRT 中删除模块(模块列表命令不显示删除模块),但不会删除 /xd/custom-modules/job 目录中上传的 .jar 文件。原因是即使在部署的模块从 SpringXD DIRT 中删除后,.jar 文件仍被 java 进程使用。如果我重新启动管理员和容器,我可以删除文件。
使用带有 --force 选项的模块上传命令会导致以下错误:
java.lang.IllegalArgumentException: Could not install Uploaded module 'job:ang-im-job' at location file [C:\install_dir\xd\custom-modules\job\batch-job.jar] as that file already exists
我正在使用 SpringXD 1.2 和 Windows 7. 这与 OS 有关吗?
以下是脚本,我将对它们进行参数化并与自动化部署工具集成,以便可以使用相同的脚本在 SpringXD DIRT 中部署模块。
upload_module.bat
set ASSEMBLY_PATH=C:\path_to_assembly\batch-job-01.00.00.00-SNAPSHOT.jar
set MODULE_NAME=batch-job
set MODULE_TYPE=job
cd %XD_INSTALL_DIR%\shell\bin\
xd-shell module upload --force --file %ASSEMBLY_PATH% --name %MODULE_NAME% --type %MODULE_TYPE%
deploy_job.bat
set MODULE_NAME=batch-job
set DEPLOY_JOB_NAME=batch-job
cd %XD_INSTALL_DIR%\shell\bin\
xd-shell job create --name %DEPLOY_JOB_NAME% --definition "%MODULE_NAME%" --deploy
destroy_job.bat
set DEPLOY_JOB_NAME=batch-job
cd %XD_INSTALL_DIR%\shell\bin\
xd-shell job destroy --name %DEPLOY_JOB_NAME%
delete_module.bat
set MODULE_NAME=batch-job
cd %XD_INSTALL_DIR%\shell\bin\
xd-shell module delete --name job:%MODULE_NAME%
OS 有问题。在 Windows 上,模块删除命令在从 SpringXD DIRT 环境中删除后不会删除 .jar 文件。 Linux.
上没有此类问题在我的例子中,虽然 XD shell 说了下面的错误,但我没有在 admin-ui
中看到该模块xd:>module delete --name job:reverseJob
Command failed org.springframework.xd.rest.client.impl.SpringXDException: Could
not delete module 'job:reverseJob'