我已经构建了大量在 Tomcat 和 Jetty 等标准容器中运行的 Java 网络应用程序,但我之前从未构建过在 Google 的 App Engine 中运行的应用程序。我正在使用 Maven,所以我最初认为我可以使用构建配置文件来执行此操作,以便在构建时选择性地包含 Google 的库以制作与 App Engine 兼容的 WAR。
不幸的是,它似乎比这更复杂。在通读文档时,您似乎必须编写大量非常具体的代码才能使用 App Engine。例如,所有文件系统写入都需要通过 App Engine 数据存储,因此您不能使用 native java.io.*
库。
我理解为什么这些东西是必要的,并且我不介意在我的 webapp 中包含一些这样的代码。但是,我真的不喜欢我的 Web 应用程序只能在 App Engine 上运行的想法。是否可以/可行地编写我的代码,以便我也可以在像 Tomcat 这样的典型容器中运行它?
最佳答案
这主要取决于您的应用要做什么。一旦你想对数据存储做一些事情,你就会遇到麻烦,例如缓存。也许你可以将数据存储调用或缓存包装起来,但某些 api,比如你可以忘记的搜索。如果您只想在本地运行一些没有问题的东西,您可以在本地模拟应用引擎。
关于java - 具有可选的 Google App Engine 支持的标准 Java webapp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27215110/