詹姆斯没有拿起mysql连接器jar

时间:2012-06-01 10:06:39

标签: apache configuration james

我尝试在我的亚马逊实例上安装james [1],并将MySQL作为后端。我有MySQL连接器mysql-connector-java-5.1.20.zip,解压缩并将其复制到conf / lib和lib /但是当我启动james时:$ sudo bin / james start它停止。包装日志显示: java.lang.ClassNotFoundException:com.mysql.jdbc.Driver

我的james-database.properties看起来像这样:

database.driverClassName=com.mysql.jdbc.Driverdatabase.url=jdbc:mysql://localhost:3306/jamesdatabase.username= ** user name **

database.password = ** secret ** vendorAdapter.database = MYSQL openjpa.streaming = false

我没有改变任何其他东西。但詹姆斯不起作用。

任何帮助,谢谢!

3 个答案:

答案 0 :(得分:1)

我设法获得了我的apache-james-3.0-beta4工作设置database.url=jdbc:mysql://127.0.0.1/james?create=true

答案 1 :(得分:0)

wiki说:

Using MySQL instead of Derby

Download the MySQL driver JAR from http://dev.mysql.com/downloads/connector/j/3.1.html, and put the JAR file into your ./conf/lib folder. Change the database settings in ./conf/database.properties to the following values:

# MySQL JDBC database properties
database.driverClassName=com.mysql.jdbc.Driver
database.url=jdbc:mysql://localhost/james
database.username=jamesuser
database.password=password_for_jamesuser
vendorAdapter.database=MYSQL
openjpa.streaming=false

To add the JAR to the classpath, edit ./bin/setenv.sh as shown here:

# Add every needed extra jar to this
CLASSPATH_PREFIX=../conf/lib/mysql-connector-java-5.1.13-bin.jar

但是,他们的版本设置似乎已经过去,而且,不可否认,这些路线don't work for me

答案 2 :(得分:0)

我知道这个回复有点迟了但我刚遇到这个问题。

Eric Charles answer

beta4中的conf / lib / * .jar加载是错误的。

您需要编辑conf / wrapper.conf并更改

'wrapper.java.classpath...=../conf/lib' to 
'wrapper.java.classpath...=../conf/lib/*' (add a /* after lib).

您可以使用文本编辑器,或者如果您使用脚本或类似的东西(在我的情况下是Dockerfile)来安装James,您也​​可以通过转到wrapper.conf所在的目录来编辑它并执行:

sed -i "s/wrapper\.java\.classpath\.2=\.\.\/conf/wrapper\.java\.classpath\.2=\.\.\/conf\/lib\/\*/g" wrapper.conf

在此之后,下次启动James时,应将conf / lib中的所有jar加载到类路径中。