如何解决没有 Maven 和 Spring Boot 的 Vaadin 14
我想在不使用 Maven 或 Spring Boot 的情况下创建 Vaadin 14 应用程序。只是一个带有嵌入式 Jetty 服务器的普通 Java 应用程序。这在过去是可能的。还有可能吗?
带有 Vaadin 6.x 和 Jetty 的旧代码:
private static void initServer(Settings settings) throws Exception,InterruptedException {
httpPort = settings.getInt("webapp.port",8888);
final Server server = new Server(httpPort);
final WebAppContext webapp = new WebAppContext();
webapp.setcontextpath("/");
webapp.setResourceBase("WebContent");
webapp.setClassLoader(Thread.currentThread().getContextClassLoader());
server.setHandler(webapp);
server.start();
server.join();
}
解决方法
是的,这是可能的,通过不使用构建工具(任何 java 构建工具。例如:maven、gradle、ant+ivy、leiningen、grape、buildr、bazel 等),您有大量的额外工作要做。 .),但这是可能的。
您将有许多 jar 需要管理,不仅在 Jetty 内,而且还有 Jetty 之外的依赖项(如各种规范的 api jar)。
然后,您将对嵌入式码头的使用进行一些更改。
您需要进行的更改取决于您打算使用的 Jetty 版本。
- Jetty 9.x(Servlet 3.1/Java EE 7)-https://github.com/eclipse/jetty.project/tree/jetty-9.4.x/examples/embedded
- Jetty 10.x(Servlet 4.0 / Jakarta EE 8)- https://github.com/eclipse/jetty.project/tree/jetty-10.0.x/demos/embedded
- Jetty 11.x(Servlet 5.0 / Jakarta EE 9)https://github.com/eclipse/jetty.project/tree/jetty-11.0.x/demos/embedded
您从 Jetty 6.x 开始,它用于 Java EE 4 上的 Servlet 2.1。 从那以后,各种 EE 规范、HTTP 规范甚至 Java JVM 本身发生了巨大的变化,导致 Jetty 发生了变化。
,Vaadin 本身提供 several different example projects 的 Vaadin 14 有/没有 Spring 和不同的构建工具。 Gradle 经常被用作 Maven 的替代品,可以在没有任何 CDI 的示例中找到纯 Java 风格。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。