Local development on Linux
Using Eclipse
Using Eclipse is a (legacy) option (see Development Environment Setup). It has convenient aspects but most of the required software according to the existing documentation is so ancient it is not easy to put them together. Somebody needs to work on making it work with recent versions of Eclipse and its plugins.
Virtual Machine
Using a virtual machine may be a good idea to isolate the environment and install some of the older versions of software that are required. A Vagrant/VirtualBox/Ubuntu configuration is available at https://git.yale.edu/CCT-Web/vagrant-yale-bedework. (You won't be able to use Eclipse because this instance is headless but it's lightweight and easier to debug in some ways).
MySQL Issue
While Mac and Windows are case-insensitive in some ways, Linux is case-sensitive. You may encounter some errors such as table name conflicts. In that case, you should modify the MySQL configuration file (likely /etc/my.cnf or /etc/mysql/my.cnf) as below. Note the line should go under the [mysqld] section.
[mysqld] lower_case_table_names=1
Lucene Index
Bedework will maintain Lucene index. You have to set the path through the admin UI (/caladmin).
From the admin home page, go to System -> Manage system preferences and set "Index root", to something like "JBOSS_ROOT/server/bedework/data/bedework-index", where JBOSS_ROOT you have to replace with the directory where JBoss is installed, for example, "/opt/local/jboss-4.2.3-yale-bedework".
Build and Install
Check out the source code from
- https://svn.its.yale.edu/repos/eventCalendar/yale-bedework/trunk
- https://svn.its.yale.edu/repos/eventCalendar/yale-bedework-installer/trunk
Copy yale-bedework/yale-bedework-vendor/build.properties to build-${USERNAME}-properties in the same directory and edit the file according to the instructions within. ${USERNAME} is your username in the machine, as ${user.name} in Ant will return.
Copy yale-bedework-installer/src/main/installer/install-defaults.properties to yale-bedework-installer/install.properties and edit it to reflect the local setting.
cd ${workspace}/yale-bedework mvn -e clean package mvn install cd ${workspace}/yale-bedework-installer mvn -e clean install #Deploys EARs into JBoss.