我使用maven来打包和部署我的谷歌应用引擎和所有相关的前端&后端文件。我注意到在war文件中有多个版本的相同的java库,例如google-api-client-appengine-1.30.jar
,也有1.31
和1.32
。我没有也不需要依赖于这个jar文件,所以maven抓取最新的,但不删除旧的版本。我显然需要清理一下。在运行mvn clean
之后,我的库集变得更小、更干净了。
然而,当我再次部署应用程序时,它报告:[INFO] GCLOUD: #= Uploading 1 file to Google Cloud Storage =#
这只是我的changelog.html文件。
我如何知道部署了哪些jar文件以及代码实际运行/使用的jar文件的哪个版本?谢谢蒂姆。
您可以通过在pom.xml
文件中指定库的版本来选择maven项目中需要的库的版本。对于App Engine也是一样,这里有一个添加App Engine Maven插件的例子。
如果你没有指定版本,maven将自动抓取最新版本。您可以通过运行以下命令来检查将使用每个依赖项的哪个版本:
mvn dependency:tree
请注意,此命令将显示如果您在此时运行mvn package
,将使用哪些版本。
最后,尽管在大多数情况下跳过clean
是安全的,但不建议这样做,您应该使用它来保持目标目录的整洁,如下所述。