gpt4 book ai didi

gwt - 有没有人在 Heroku 上成功部署过 GWT 应用程序?

转载 作者:行者123 更新时间:2023-12-03 20:52:51 24 4
gpt4 key购买 nike

Heroku 最近开始支持 Java 应用程序。查看文档,它似乎类似于 Java Servlet 标准。有谁知道在 Heroku 上成功部署 GWT 应用程序的实例?如果有,有什么限制吗?

最佳答案

是的,我已经使用 Java 入门指南成功部署了这里:
http://devcenter.heroku.com/articles/java

我使用带有 appassembler 插件方法的 Maven 项目,但在构建过程中添加了 gwt-maven-plugin 来编译 GWT 应用程序。

当您推送到 heroku 时,您会看到 GWT 编译过程正在运行,仅在一个线程上运行很慢,但它工作正常。

嵌入式 Jetty 实例被配置为从 src/main/resources/static 在/static 提供静态资源,我在构建期间将编译的 GWT 应用程序复制到这个位置,然后像往常一样引用 .nocache.js。

你还想知道什么?

您有一个选择,要么在本地将 GWT 应用程序的 Javascript 表示构建到您的 Maven 项目中,提交它并从您的应用程序中读取它,要么通过我提到的 gwt-maven-plugin 在 Heroku 中生成它。

通过嵌入式 Jetty 从 jar 内的静态位置提供文件的代码在 Guice ServletModule 中是这样的:

(请参阅下面我的其他答案,了解更简单且更少由 Guice 驱动的方法。)

protected void configureServlets() {
bind(DefaultServlet.class).in(Singleton.class);
Map<String, String> initParams = new HashMap<String, String>();
initParams.put("pathInfoOnly", "true");
initParams.put("resourceBase", staticResourceBase());
serve("/static/*").with(DefaultServlet.class, initParams);
}

private String staticResourceBase() {
try {
return WebServletModule.class.getResource("/static").toURI().toString();
}
catch (URISyntaxException e) {
e.printStackTrace();
return "couldn't resolve real path to static/";
}
}

还有一些其他技巧可以让嵌入式 Jetty 与 guice-servlet 一起工作,如果这还不够,请告诉我。

关于gwt - 有没有人在 Heroku 上成功部署过 GWT 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7369609/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com