从 cloud foundry 下载已部署的 War

Download the deployed War from cloud foundry

有没有办法从 cloud foundry 下载已部署的 War?我想把war炸开,看看war里的属性个文件是否正确

没有直接的方法可以从 运行 Cloud Foundry 容器下载您的应用程序。但是,您可以使用 cf files <appname> [path] 命令浏览甚至一次下载一个文件。

cf files ramhellojava app
Getting files for app ramhellojava in org ....
OK

.java-buildpack/                             -
.java-buildpack.log                     136.3K
META-INF/                                    -
WEB-INF/                                     -
images/                                      -
index.html                                773B
index.js                                  1.1K
style.css                                 1.1K

第一件事...

Is there a way to download the deployed War from cloud foundry?

WAR 文件未上传到 Cloud Foundry。 cf cli 将查看 WAR 文件并从中提取所有内容。它不会上传整个文件,而是上传其中的各个文件。这是一个微小的差异,但值得注意,因为服务器上不存在 WAR 文件本身,只有它的内容。

I want to explode the war and check if the property files in the war are correct.

如果您要查找单个文件,那么如前所述,cf files 是一种方法。或者,您可以使用 Eclipse w/the CF 插件。这允许您通过 GUI 浏览文件。

如果您需要大量文件或想要整个应用程序,更好的选择是下载用于 运行 您的应用程序的 droplet。只要您的应用程序成功完成暂存(即构建包 运行 并完成),您应该能够下载由 CF 构建的 Droplet。其中应包含您的应用程序代码。

例如:

$ cf app <app-name> --guid
2836d5fe-35f7-4409-b27b-4ed308152bb4
$ cf curl /v2/apps/2836d5fe-35f7-4409-b27b-4ed308152bb4/droplet/download > my-droplet.tar.gz