Java笔记 ·

IDEA配置Resin

前两天运行项目需要Resin,搜索时发现可用信息不多,在此记录一下配置过程,以及期间遇上的问题。

1. Resin下载

最新版: https://caucho.com/products/resin/download/archive

Resin3.x https://caucho.com/products/resin/download/3.1

根据实际情况选择所需版本,这里演示使用 resin-4.0.64 。

本文试验环境:
- Java8
- Resin-4.0.64 (D:\00work\Java\resin-4.0.64)

2. Resin配置

2.1 新建Resin配置界面

通过 Edit Configurations 打开配置界面。

选择左上角“+”在展示的下拉菜单中选择 Resin-> Local 。

2.2 Server选项卡

若之前在左侧 Templates 中配置过 本地Resin的配置,这里会将其当做默认配置自动填充。

下面是Server选项卡最终完整配置图

2.2.1 配置Application Server

选择 Application Server右侧的 Configure… 按钮,打开其配置界面。

设置Resin Home为本地Resin所在目录,并勾选Include all resin JARs复选框。

设置Default resin configuration file,定义默认的Resin配置文件(Resin4可直接选择 本地 Resin 的conf目录中的 resin.xml 文件)。

点击OK完成配置。

2.2.2 设置VM options

优化性质,不是必选项。

-Xms4048m
-Xmx4048m
-XX:MaxNewSize=1024m
-XX:MaxPermSize=1024m

2.2.3 设置JRE

需要1.6+

2.2.4 设置Resin configuration template

项目的Resin自定义配置文件,如

E:\00Work\Program\xxx\resin.conf

勾选 Do not alter Resin configuration 之后, Resin配置将以配置文件为准,下面的字符集、端口号等均不在生效。

2.3 Deployment选项卡

添加所需要发布的Artifact

Deployment method需要修改为resin.xml

JMX 是把项目打包的文件 放在 resin 服务器下 webapp 下 只有在服务器启动时 才把项目给拷贝过去,无法在 intellij 中实时更新。

resin.xml 是在C盘 C:Users\xxx\AppData\Local\Temp 目录下 copy了一份 resin.xml 的配置文件 然后把服务器目录空间指向了你的项目工作空间 可以实现intellij修改实时更新

去掉 Use default context name(always true if deployment method is JMX) 的复选框。

Application context name 保持默认/不变。

至此 Resin 配置完成。

当时四处找问题,翻到这个比较详细的配置教程,Eclipse或者Maven相关的启动方式可以直接参考:

IDEA集成Resin启动Maven项目

3. 期间遇到的问题

1. xxx does not start within 6000ms

4.0.60+的版本可能会出现该信息,这是由于项目启动超出了 resin的项目启动默认等待时间。

解决方案

在 web-app 标签中 添加 active-wait-time 属性,并赋值一个较大值(比如60000),根据描述推测这里是毫秒值。

<web-app active-wait-time="60000">

参考资料

webapp: add info log when WebApp does not start within active-wait-time starts (#6197)

http://www.caucho.com/resin-4.0/changes/changes.xtp

https://caucho.com/resin-4.0/reference.xtp#active-wait-time

参与评论