【问题标题】:Using Intellij IDEA Ultimate for static web site development使用 Intellij IDEA Ultimate 进行静态网站开发
【发布时间】:2016-03-28 03:21:13
【问题描述】:

我正在尝试使用 Intellij IDEA Ultimate 开发静态(无动态页面 - 纯 HTML + javascript)网站。目前我使用Tomcat 作为本地服务器和tomcat 插件IDEA。其实后面的站点会有RESTful层,会部署到google-app-engine,但是目前我想完全专注于客户端。

我的项目目录结构如下:

--+ src
  |--+ main     
  |  |--+ webapp
  |  |  |--+ js
  |  |  |--+ css
  |  |  |--+ html
  |  |  |--- index.html

我对此类开发的主要要求是立即查看我在 html/js/css 中所做的更改,而无需重新构建项目。为此,相信我需要以某种方式配置tomcat 的运行配置,直接查看webapp 目录(而不是分解的war 目录)。有没有这样的方法?我对本地服务器的其他选项完全开放,而不是 Tomcat,这可能更简单,可以在 Windows 中运行

【问题讨论】:

标签: java tomcat web intellij-idea web-development-server


【解决方案1】:

只需将您的内容放在项目下的某个目录中,然后将浏览器指向文件系统上的索引页面。每次您在 Idea 中更改某些内容时,请刷新页面 - 它会起作用。您根本不需要服务器

【讨论】:

  • 我已经更新了问题 - 实际上该项目有 RESTful 层作为后端。目前它没有真正的逻辑 - 只有存根,但我需要能够为网站的 javascript 部分提供请求
  • 答案仍然有效。只需将浏览器指向文件系统,即可获得所需的实时更新。你不需要任何其他东西来完成这项工作。您的 javascript 仍然可以在 localhost:8080/api(或其他任何地方)调用您的休息函数来访问休息服务。
  • 实际上我需要他们使用相对 URL,以便能够在本地和部署中工作。所以在这种情况下,它会尝试在file:///... 寻找 REST
【解决方案2】:

CATALINA_BASE

Catalina 是 Tomcat 中提供 Web 服务器功能的部分。

默认情况下,Catalina 会在 Tomcat 自己的“webapps”文件夹中查找它所服务的网站的内容。您可以轻松地覆盖该默认值。您可以在指定特定文件夹的位置指定“Tomcat 基础”设置。搜索CATALINA_BASE了解更多信息。

【讨论】:

    【解决方案3】:

    您目前使用的是application server,听起来您只需要web server

    您可以轻松地设置一个基本的网络服务器来提供您的 HTML 和 JavaScript 文件。如果您安装了 Python,一个不错的选择是 SimpleHTTPServer

    【讨论】:

    • 如果我的 RESTful 后端(请参阅我更新的问题)是基于 python 的,那将是一个非常好的选择。但我需要它是基于 java 的,并且我需要 javascript 客户端能够与 RESTful api 进行通信
    • SimpleHTTPServer 在 Python 上运行的事实与后端无关——您不必编写或使用任何 Python 代码,它只是一个 Python 应用程序。如果您的后端是在 Google App Engine 上运行的 Java,那么这很重要。 Web 服务器只是让您在浏览器中运行代码(浏览器中的 JavaScript 与后端通信)。
    • 但是他们不能同时监听同一个端口。其中一个用于提供静态 HTML,另一个用于处理传入请求,但两者都应在同一端口可用(以保持相同的根 URL)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-26
    • 2016-10-15
    • 2016-05-25
    • 1970-01-01
    • 1970-01-01
    • 2018-05-07
    • 1970-01-01
    相关资源
    最近更新 更多