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了)
4.编译Resin,执行以下命令(编译的好处是可使用JNI提升Resin的效率)
chmod 777 configure
./configure -prefix=/usr/local/resin -enable-64bit-jni
本地调试用:./configure -prefix=/Users/huangjun/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.csdn.net/aixiaoyang168/article/details/50948149
第二步:集成
1、在Eclipse中New - Server,选择“Download additional server adapters”, 之后选择“Resin (Java EE Web Profile) Server”.
注意:这里由于我的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”完成。
注意:
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配置都有哪些如图。
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配置文件。
双击打开,在host节点下新增web-app节点代码:
这样,你就可以直接通过http://127.0.0.1:8080/直接访问你的项目啦!,也可以改为:
这样就可以通过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.小虫旁边的倒三角,点击
2.在弹出的页面中做如下操作:
3.在新创建远程调试应用的页面配置:
name:给你的远程调试应用起个名字
project:你需要调试的工程
Connection Type:保持默认
最重要的来了:
host:你需要连接的远程服务器的IP
port:记得刚才在resin中添加的配置吗?就是下面这行,将adderss 的值(9998)写进去,然后就OK了
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9998
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.csdn.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目录、
2.2.4 configure: error: invalid variable name: `–prefix'
此问题要注意:从网页复制命令行时,有可能将英文-转成了中文—,后面的enable也一样,最好手动删除-再输入-。
2.2.5 make: Nothing to be done for `all' 报错
>make clean(清除上次make命令所产生的object文件(后缀为“.o”的文件)及可执行文件。
如何解决make: Nothing to be done for `all' 的方法
http://blog.csdn.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.csdn.net/zfphp/article/details/56289981
(Good)mac上安装tomcat apr
http://blog.csdn.net/bfqiwbifj/article/details/46844871
3 参考链接
(Good)resin远程调试配置
http://blog.csdn.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.csdn.net/windless0530/article/details/52165874
mac os sierra 安装openssl坑
http://blog.csdn.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.csdn.net/qyee16/article/details/72799852
解决更新到os x10.11后openssl头文件无法找到的问题
http://blog.csdn.net/fanggai/article/details/70048578
mac上安装tomcat apr
http://blog.csdn.net/bfqiwbifj/article/details/46844871
如何解决make: Nothing to be done for `all' 的方法
http://blog.csdn.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.csdn.net/zfphp/article/details/56289981
Resin4.0+ 单个服务配置多个实例
http://blog.csdn.net/aixiaoyang168/article/details/50982259