首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >eXist-db -使用自动部署机制或替代方案重新部署库包

eXist-db -使用自动部署机制或替代方案重新部署库包
EN

Stack Overflow用户
提问于 2020-03-30 04:49:10
回答 1查看 61关注 0票数 0

我已经使用exist eXide接口创建了自己的类型库应用程序。使用exide ui下载了应用程序包( xar文件)。

为了通过docker文件在构建服务器上部署包,我使用了自动部署机制:

我将我的库应用程序包xar (zip)文件复制到入口点命令之前的/exist/autodeploy文件夹中(例如,在启动existdb jetty之前)。

一切正常,库得到部署。

然而,这只起作用一次。使用自动部署机制部署较新版本的库的任何其他部署都会在expath-repo.log文件中记录消息:

代码语言:javascript
复制
Application package "my library name"  already installed. Skipping. 

我曾尝试将卸载命令(使用repo:undeploy, repo:unistall)放到pre-install.xql脚本中,但是尽管该脚本在从exide编辑器中执行时会卸载库,但在自动部署期间似乎没有触发。

如何强制自动部署重新部署包而不是跳过其安装,有什么选择吗?

如果不是,我应该采取什么方向来自动化重新部署库的过程?

非常感谢你的见解。

EN

回答 1

Stack Overflow用户

发布于 2020-04-02 17:46:27

查看生成日志消息的代码,您会看到:

代码语言:javascript
复制
if (packages != null
            && (!enforceDeps || pkgVersion.equals(packages.latest().getVersion()))) {
    LOG.info("Application package " + name + " already installed. Skipping.");
    final Package pkg = packages.latest();
    return Optional.of(getTargetCollection(broker, pkg, getPackageDir(pkg)));
}

看起来你只有在两种情况下才会得到这样的结果:

installed.

  • Your 您的软件包依赖于其他尚未安装的软件包。
  1. 软件包的版本号不高于已安装的同名软件包的版本号。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60920535

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档