前言:最近再做一个wiki的账号自动添加功能开发,涉及到Confluence环境搭建,并且遇到了一些问题,记下来。
一、环境准备
1、Windows,我的是64位机。
2、Jdk1.6,其实不限版本,但是我遇到了一些问题,后面会说。
3、Confluence。
4、MySql,可以换用其他数据库,无限制。
二、安装过程
1、Jdk下载以及安装,比较常见了,一路next。
2、MySql下载以及安装。
3、重点说明Confluence安装。
三、Confluence安装
0、Confluence下载地址,可以免费试用。http://www.fangwai.net/software/confluence/confluencedownloadcenter.htm。
1、下载下来以后解压至目录。
2、在解压目录\confluence\WEB-INF\classes\confluence-init.properties
找到# confluence.home=c:/confluence/data ,去掉该行注释#,保存文件。
这个目录可以自己设置。
3、设置JDK环境变量:
右键点击计算机-属性,会出现如下界面
点击高级系统设置:
点击环境变量,新建JAVA_HOME
保存即可。
4、启动
转到bin目录下启动startup.bat脚本,如下:
实际上看到,这里出错了,出错为JAVA_HOME路径包含空格,错误信息
JAVA_HOME "D:\Program Files\jdk1.5.0_06" contains spaces. Please change to a location without
spaces if this causes problems.
出错原因其实我们很难注意到,因为安装一般都在Program
Files下,中间有个空格,换个目录就OK了,同时注意修改环境变量。
重新启动,关闭cmd窗口重新打开。
再次出错,错误信息
严重: Error initializing endpoint
java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359)
at java.net.ServerSocket.bind(ServerSocket.java:319)
at java.net.ServerSocket.(ServerSocket.java:185)
at java.net.ServerSocket.(ServerSocket.java:141)
at org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket(DefaultServerSocketFactory.java:50)
at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:538)
at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:176)
at org.apache.catalina.connector.Connector.initialize(Connector.java:1049)
at org.apache.catalina.core.StandardService.initialize(StandardService.java:703)
at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:838)
at org.apache.catalina.startup.Catalina.load(Catalina.java:538)
at org.apache.catalina.startup.Catalina.load(Catalina.java:562)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:261)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
再次出错,出错原因是端口被占用,可以通过netstat -aon|findstr "端口号"查看端口占用情况。
打开解压目录/confluence/conf/server.xml文件,有两个端口如下:
通过命令查看端口占用情况:
发现8000以及8090都被占用,修改文件server.xml文件中的端口,修改以后,重新启动。
又出错了,tomcat启动窗口一闪而过,在解压目录/logs/catalina.2014-05-16.log可以看到报错信息。
严重: Null component Standalone:type=JspMonitor,name=jsp,WebModule=//localhost/,J2EEApplication=none,J2EEServer=none
导致这个错误的原因是JDK版本太低,我用的是1.5,改为1.6以后,成功启动。记得修改环境变量中的JAVA_HOME。
6、启动成功。打开http://localhost:8888/,出现如下画面:
8、Evaluation
Installation是标准安装,使用的是内置数据库。在这里我选用的是Production Installation,可以选用外置数据库。
9、这里选用的是MySql。
在选用数据库之前,需要把mysql-connector-java-5.1.25.jar放在confluence安装目录/confluence/WBE-INFO/classes/lib目录下。
10、点击External DataBase,会转到如下页面。
11、点击Direct JDBC,进入下一步
12、Example
site
13、选择Manage
users and groups within Confluence
14、填写相关信息
next就安装完毕了。
15、在配置外置数据库Mysql的时候,需要在创建database Confluence;如下:
create database confluence character set utf8;
grant all on confluence.* to confluence@'localhost'identified by 'confluence';