【问题标题】:Setting up IntelliJ and GlassFish on a Mac在 Mac 上设置 IntelliJ 和 GlassFish
【发布时间】:2010-11-28 23:01:47
【问题描述】:

我正在寻求有关如何使用 IntelliJ 和 GlassFish 在 Mac 上启动和运行基本“hello world”网络应用程序所需步骤的帮助。到目前为止,我找到了this guide,它很有帮助,但已经过时了(一些对话框/步骤在编写后发生了变化)。

任何精通这些工具的人都可以帮助我整理出使用 IntelliJ 9.0.4 将基本 Web 应用程序部署到 GlassFish 3.0.1 所需的步骤吗?

【问题讨论】:

  • 首先启动并运行 GlassFish。下载 zip 文件并解压缩,然后在 glassfish/bin 中运行相应的脚本。您应该能够在端口 4848 上看到管理控制台。

标签: java macos glassfish intellij-idea


【解决方案1】:

首先,让 Glassfish 自行运行。这种体验会很好地为您服务,因为该过程在所有 Unix 系统上几乎相同。如果您只学习通过 IDE 与 Glassfish 交互,那么没有 IDE,您将完全迷失方向。

部署应用程序有两种方法:通过管理 Web 界面(用户友好,但速度很慢),或通过命令行。后者的做法如下:首先,确保 Glassfish 附带的 asadmin 实用程序在您的路径上,然后执行以下操作:

asadmin --user admin deploy --name hello ~/projects/hello/build/hello.ear

默认情况下,admin 用户的密码为空;如果没有,系统会提示您。

【讨论】:

    【解决方案2】:

    我不知道 Glassfish,但我可以告诉你如何使用 Tomcat 来做。唯一的区别应该是您在 IntelliJ 中启动的应用服务器:

    1. 在项目设置下,创建一个 Web 模块 - 这将为您提供 /WEB-INF 和 web.xml
    2. 在项目设置下,创建一个映射到展开的 WAR 文件的工件。确保将您需要的 JAR 添加到 WEB-INF/lib;您的 .class 文件被复制到 WEB-INF/classes;所有必要的资源都放在您想要的地方。
    3. 设置 Glassfish 并告诉它部署您的爆炸 WAR 工件。将您的 Web 应用程序的名称作为上下文根(例如,“/foo”)。
    4. 运行网络应用程序。 IntelliJ 将编译您的代码,在 /out 目录中创建分解的 WAR 工件,然后部署到您的应用服务器。
    5. 假设您的 web.xml 中有 index.html 欢迎文件,您应该会看到应用在 URL http://localhost:4848/foo/index.html 下启动

    JNDI 设置是另一回事。

    【讨论】:

      【解决方案3】:

      IMO 在任何应用服务器上部署 EAR/WAR 的最佳方式是使用 Maven 构建 EAR 和 Cargo Maven 插件以进行重新部署。我会使用它的原因是它完全独立于 IDE,并且可以在开发和我的持续集成服务器中使用它。

      Glassfish EAR/WAR 模块的 pom.xml 片段:

      <plugin>
          <groupId>org.codehaus.cargo</groupId>
          <artifactId>cargo-maven2-plugin</artifactId>
          <version>1.0.2</version>
          <configuration>
              <container>
                  <containerId>glassfish2x</containerId> <!-- or glassfish3x -->
                  <type>installed</type>
                  <home>${glassfish.home}</home>
              </container>
              <configuration>
                  <properties>
                      <cargo.remote.password>${glassfish.password}</cargo.remote.password>
                  </properties>
              </configuration>
              <deployer>
                  <type>installed</type>
                  <deployables>
                      <deployable>
                          <location>${project.build.directory}/${project.build.finalName}.${project.packaging}</location>
                      </deployable>
                  </deployables>
              </deployer>
          </configuration>
      </plugin>
      

      重新部署命令:

      mvn cargo:redeploy -Dglassfish.home=/path/to/glassfish/-Dglassfish.password=adminadmin -DskipTests=true -o
      

      如果您不知道 Maven 2 是什么,您应该了解它。

      【讨论】:

        【解决方案4】:

        我在本教程中取得了成功:Developing applications for GlassFish Server in IntelliJ IDEA 10。我正在使用 IDEA 11 和 GlassFish 3.1.2

        【讨论】:

          猜你喜欢
          • 2012-10-16
          • 1970-01-01
          • 2019-05-03
          • 2011-02-28
          • 2010-12-28
          • 1970-01-01
          • 2019-01-31
          • 2014-10-30
          • 1970-01-01
          相关资源
          最近更新 更多