3

我猜想使用像 eclipse 这样很棒的 IDE 的一个缺点是你错过了应用程序幕后发生的事情的重点。我是一名 ruby​​ 开发人员,所以不是 java 老手。所以我一直在用java编写一个项目,并为IOC和MVC使用spring框架。当我在 Eclipse 中选择在服务器上运行时,有人可以向我解释发生了什么吗?因为最终我会将这个应用程序的杰作部署到 Linux 服务器上。这是我的设置。我在 Eclipse 中使用 Spring MVC 3 和 maven 插件。在 pom.xml 文件中,我有最新的 spring 发布版本、log4j、spring mvc、spring context 等内容。

我一直在使用 Eclipse IDE 中在服务器上运行的便捷选项在 localhost 上测试我的应用程序。eclipse 中的服务器配置指向我安装了 tomcat 7 的 tomcat 目录位置。请揭开幕后发生的事情的神秘面纱,以及如果我想在生产服务器上部署此应用程序需要做什么。越详细越好。提前致谢。

4

3 回答 3

1

将 Web 应用程序部署到 Tomcat 就这么简单(假设安装了 Tomcat)

  1. .war正确的格式捆绑您的应用程序。
  2. 将生成的.war文件移动到/webappsTomcat 安装文件夹的目录。
  3. 运行/bin/startup.[sh|bat]Tomcat 安装文件夹中的脚本。

请注意,您可以执行一些中间步骤来配置部署,例如更改上下文路径。详细阅读 Tomcat 文档。

在第 3 步中,Tomcat 会将内容提取到与您的文件同名的文件夹中.war的目录中。它将使用它作为上下文路径。脚本本身通过将与一些 Tomcat 库一起放入类路径来启动一个进程。/webapps.warjavaWEB-INF/[class|lib|...]

所以Eclipse基本上为你完成了上面的所有步骤。

于 2013-10-02T15:45:20.400 回答
0

最终,您正在部署一个 Web 应用程序,这意味着您正在将一个 war 文件部署到服务器。不管使用像 spring 这样的框架,struts 什么都可以。

因此,Web 应用程序请求从 web.xml 文件开始。所以对于spring mvc应用程序,您将来自浏览器的所有请求映射到DispatcherServlet,然后这个人负责管理您的应用程序的整个生命周期。有关 MVC 如何工作的更多详细信息,请参阅 http://docs.spring.io/spring/docs/3.2.x/spring-framework-reference/html/mvc.html

因此,为了在服务器上部署您的应用程序(战争),首先您必须从源代码创建战争。您可以使用传统方法来使用 java 给定的实用程序,例如在命令提示符下使用jar,或者您可以使用 ANT、GRADLE、MAVEN 和此类构建工具,以自动方式为您创建战争。Spring 并没有为你做任何额外的事情。我相信您应该对这些工具的工作原理进行更多研究。一旦战争为你准备好了,你可以简单地去 tomcat UI,在那里你会找到部署你的战争的选项。

我希望它对你有帮助。

于 2013-10-02T15:53:23.953 回答
0

所有的大事都发生在两个地方。

第一个是 Eclipse Package Explorer 根目录中的“Servers”目录。这些是 Eclipse 在创建新服务器实例时(主要)使用的服务器配置文件。

第二个位于 Eclipse 工作区的 ./metadata/.plugins/org.eclipse.wst.server.core/ 文件系统目录中。这是 eclipse 实际部署 tomcat 应用程序的地方。


Tomcat 文档实际上非常好,有助于解释如何进行部署。仅供参考,我不知道有多少人使用Manager,根据我的经验,大多数人手动部署他们的应用程序。

于 2013-10-02T15:54:41.607 回答