Resin专题(一)—— MacOS搭建Resin环境

1     环境搭建

1.1     MacOS下搭建Resin+Eclipse开发环境

1.1.1 安装Resin

resin installation quick start

http://www.caucho.com/resin-4.0/admin/starting-resin.xtp#OtherUnixLinuxSolarisandMacOSX

一:下载、编译、安装Resin-Pro4

1.下载Resin Pro (www.caucho.com),解压到任意目录

2.打开控终端(控制台),进入解压后的Resin目录,执行以下两条命令,用于设置Java环境

JAVA_HOME=/Library/java/Home

export JAVA_HOME

3.修改Resin目录下configure中openssl的查询路径(MacOS10.11以后默认不引入ssl了)

Resin专题(一)—— MacOS搭建Resin环境

4.编译Resin,执行以下命令(编译的好处是可使用JNI提升Resin的效率)

chmod 777 configure

./configure -prefix=/usr/local/resin -enable-64bit-jni

本地调试用:./configure -prefix=/Users/*n/Documents/Projects/Servers/resin4 -enable-64bit-jni

make install

5.编译过程如未报错的话,Resin已部署在/opt/resin

6.到bin目录下Execute sudo resinctl start

or run java -jar lib/resin.jar start

7.Browse to http://localhost:8080


备注:建议申请测试用的license,可开启ResinPro的所有功能

1.1.2 在Eclipse上配置Resin插件

Eclipse(Luna)集成Resin4.0+服务器,以及配置参数

http://blog.****.net/aixiaoyang168/article/details/50948149

Resin专题(一)—— MacOS搭建Resin环境


Resin专题(一)—— MacOS搭建Resin环境


Resin专题(一)—— MacOS搭建Resin环境


Resin专题(一)—— MacOS搭建Resin环境

第二步:集成

1、在Eclipse中New - Server,选择“Download additional server adapters”, 之后选择“Resin (Java EE Web Profile) Server”.

Resin专题(一)—— MacOS搭建Resin环境

注意:这里由于我的Eclipse上已经集成了Resin了,所以你能看到Resin 4.0标志了,第一次集成时,请按照上边的步骤执行

2、Download Resin结束后,选择”Resin4.0”,点击”Next”,到Resin Runtime配置页面,选择JRE和Resin Home之后,点击”Next”,继续点击”Next”,到Resin configure页面,点击”Next”,到Add and Remove项目页面,选择要加入的项目,Add到右边,点击”Finsh”完成。

Resin专题(一)—— MacOS搭建Resin环境
Resin专题(一)—— MacOS搭建Resin环境

注意:

1)Resin Runtime配置页面,选择JRE,可以使用默认JRE,也可以选择本机安装的其他版本JRE,Resin Home就是下载完Resin解压缩以后的地址。

2)Resin configure页面,设置Port端口时,默认是8080,这里可以修改为你想要的端口号,也可以不修改,之后在server里面修改。

3、经过上边两步操作之后,在Servers里面就可以看到一个新的蓝色小蜻蜓啦~,点击启动service,请稍作等待,第一次启动稍慢(当然Resin启动是很快的,我们应用启动稍慢些),启动完成后在地址栏输入http://127.0.0.1:8080/projectName 体验下吧!

第三步:配置

一、有人会问我不想每次访问都带上我的projectName访问,我想直接访问http://127.0.0.1:8080/就可以进入项目,或者别名http://127.0.0.1:8080/xx进入项目,那当然是可以的啦!在配置之前,咱先看下Resin Service的Overview配置都有哪些如图。

Resin专题(一)—— MacOS搭建Resin环境

1、General Information 这里是一般的设置信息,包括Service name、Host name、Configurtion path 什么的,基本不需要改什么。

2、Server Properties 这里是服务的一些属性信息,这里也可以修改端口号哦!

3、Resin Server Deployment Options 这里是Resin服务部署选项设置,你可以根据你的需求选择不同的部署方式

4、Publishing 这里是发布设置,你可以1)选择从不自动发布,也可以2)选择当资源修改时立即重新发布,也可以3)选择build以后自动部署,默认是2,当然2不好的地方就是,当你边调试边开发的时候,你修改了代码,resin就会自动重启,有点小恶心哈! 这个时候,你可以把模式调整为1或者3

5、Timeouts 这里是这只超时时间,默认4分钟,如果你的服务4分钟还没有启动完成,Resin就会报错,可以增大启动时间。

6、Ant Publisher Properties 这里是Ant发布属性,一般不用Ant用不到

好了,在来解决上边的提到的那个问题,一般我们新建了service之后,会在Eclipse的左侧树形目录结构里面的Service里面增加你刚配置的service,找到Resin 4.0 at localhost-config文件夹,找到下边的resin.xml配置文件。

Resin专题(一)—— MacOS搭建Resin环境

双击打开,在host节点下新增web-app节点代码:

Resin专题(一)—— MacOS搭建Resin环境

      这样,你就可以直接通过http://127.0.0.1:8080/直接访问你的项目啦!,也可以改为:

Resin专题(一)—— MacOS搭建Resin环境

这样就可以通过http://127.0.0.1:8080/xx访问你的项目啦!

二、当我们有多个项目要同时部署的时候,比如一个前端项目,一个后台管理项目,需要同时启动的话,那我们就需要在新增一个Resin service了,通过配置端口号不一样来达到目的,然后当我按照上边的第二步集成的方法,再来一次的时候,发现第一步就出错了Selected Working Directory is already in use. 难道两个Resin service不能同时用一个Resin目录? 好吧,没辙,只能将Resin在解压缩一份出来,用新的目录在配置。。。

当我们一切搞定之后,这次新的Resin service设置端口为8090哈,启动的时候,启动了半天还是不成功啊!!! 这又是为啥!!!默默的打开Service下边的Resin 4.0 at localhost(2)-config文件夹,找到下边的resin.properties配置文件,修改端口吧!

app.http : 8090

# app.https         : 8443

web.http : 8090

# web.https         : 8443

    好了,大功告成!这下我们就可以通过启动两个Resin service,来同时运行多个项目调试啦!

1.1.3 apache2.2整合resin3+Eclipse远程调试

https://wenku.baidu.com/view/70914c855ef7ba0d4a733b69.html

2     开发技巧

2.1     调试技巧

2.1.1 远程调试配置

linux版本,resin3.1版本以上:

背景: resin已经安装在linux上

具体步骤:

1.进入resin的安装路径下的conf目录,下面有个resin.conf的文件,打开它,将下面这段配置添加进去,然后重启resin(大家应该知道如何重启吧);

-Xdebug

-Xnoagent

-Djava.compiler=NONE

-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9998

2.配置myeclipse的远程调试,按照图示进行:

1.小虫旁边的倒三角,点击

Resin专题(一)—— MacOS搭建Resin环境

2.在弹出的页面中做如下操作:

Resin专题(一)—— MacOS搭建Resin环境

3.在新创建远程调试应用的页面配置:

  name:给你的远程调试应用起个名字

 project:你需要调试的工程

Connection Type:保持默认

最重要的来了:

host:你需要连接的远程服务器的IP

port:记得刚才在resin中添加的配置吗?就是下面这行,将adderss 的值(9998)写进去,然后就OK了

-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9998

Resin专题(一)—— MacOS搭建Resin环境

2.2     配置问题

2.2.1 sudo: ./configure: command not found问题

其实问题在于权限不够:chmod 777 configure即可

http://forum.ubuntu.org.cn/viewtopic.php?t=318765

2.2.2 No OpenSSL has been found

[mac]安装openssl

http://blog.****.net/qyee16/article/details/72799852

浏览器下载:(直接浏览器访问即可下载,经试验此种方式下载速度较快,其他版本可以在这里下载:https://www.openssl.org/source/ )

https://www.openssl.org/source/openssl-1.0.2l.tar.gz

安装

1.在解压目录下,执行(使用sudo是因为要prefix的访问权限 ;指定 prefix是因为此目录以后使用比较方便)

sudo ./config --prefix=/usr/local/openssl  

2.执行

make  

3.执行 

make install  

4.查看版本

openssl version  

显示:

OpenSSL 0.9.8zh 14 Jan 2016

2.2.3 手动安装openssl后头文件依然无法找到的问题

用文本编辑器打开configure文件,修改ssl3.h的路径查询目录为真实openssl/include/openssl目录、

Resin专题(一)—— MacOS搭建Resin环境

2.2.4 configure: error: invalid variable name: `–prefix'

此问题要注意:从网页复制命令行时,有可能将英文-转成了中文—,后面的enable也一样,最好手动删除-再输入-。

Resin专题(一)—— MacOS搭建Resin环境

2.2.5 make: Nothing to be done for `all' 报错

>make clean(清除上次make命令所产生的object文件(后缀为“.o”的文件)及可执行文件。

如何解决make: Nothing to be done for `all' 的方法

http://blog.****.net/gwzz1228/article/details/34424179

2.2.6  Error /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/apr-1-config not found!.

建立软连接:

sudo ln -s /usr/local/apr/bin/apr-1-config /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/

sudo ln -s /usr/local/apr/bin/apu-1-config /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/

(Good)apxs:Error /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/apr-1-config not found!.

http://blog.****.net/zfphp/article/details/56289981

(Good)mac上安装tomcat apr

http://blog.****.net/bfqiwbifj/article/details/46844871

3     参考链接

(Good)resin远程调试配置

http://blog.****.net/zhangt85/article/details/8183153

apache2.2整合resin3+Eclipse远程调试.docx

https://max.book118.com/html/2017/0622/117241159.shtm

解决mac osx编译libevent找不到openssl目录的问题

http://blog.****.net/windless0530/article/details/52165874

mac os sierra 安装openssl坑

http://blog.****.net/u013883974/article/details/57957560

Eclipse+Resin开发环境配置 for Mac OS 10.6

http://www.rosoo.net/a/201106/14639.html

mac下安装 resin 奇葩问题总结

http://www.cnblogs.com/sonofelice/p/5364671.html

mac下安装配置java jdk,maven,resin

http://www.cnblogs.com/jmtbai/p/4394424.html

macosx 下安装resin

http://www.neatstudio.com/show-2632-1.shtml

resin installation quick start

http://www.caucho.com/resin-4.0/admin/starting-resin.xtp#OtherUnixLinuxSolarisandMacOSX

[mac]安装openssl

http://blog.****.net/qyee16/article/details/72799852

解决更新到os x10.11后openssl头文件无法找到的问题

http://blog.****.net/fanggai/article/details/70048578

mac上安装tomcat apr

http://blog.****.net/bfqiwbifj/article/details/46844871

如何解决make: Nothing to be done for `all' 的方法

http://blog.****.net/gwzz1228/article/details/34424179

(Good)apxs:Error /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.12.xctoolchain/usr/local/bin/apr-1-config not found!.

http://blog.****.net/zfphp/article/details/56289981

Resin4.0+ 单个服务配置多个实例

http://blog.****.net/aixiaoyang168/article/details/50982259