====== Development Documentation ====== The following documentation is about developing LSC itself - not a LSC synchronization task. Make sure you've read all the [[..:start|general documentation]] before continuing here! ===== Working environment ===== As well as the general [[..:requirements]], you need some extra tools to hack LSC - make sure you get [[environment|these set-up]]. You should follow [[documentation:1.1:development:codestyle|our defined code style]]. ===== Java API for LSC-core ===== The JavaDoc is generated from comments in LSC code. It needs a lot of improvement, all comments in code are very welcome! * http://lsc-project.org/javadoc/latest/ This can be very useful to get a function name to call from SyncOptions in the configuration file (see [[http://lsc-project.org/javadoc/latest/org/lsc/beans/AbstractBean.html|AbstractBean]], [[http://lsc-project.org/javadoc/latest/org/lsc/utils/directory/AD.html|AD]], [[http://lsc-project.org/javadoc/latest/org/lsc/jndi/ScriptableJndiServices.html|ScriptableJndiServices]], [[http://lsc-project.org/javadoc/latest/org/lsc/utils/DateUtils.html|DateUtils]]...) It is updated nightly based on the SVN trunk. ===== Development tools ===== See [[:development#tools|Development tools]] ==== Running tests ==== Tests are run through Maven. Run all tests: mvn test Run one test, named MyTest (note: don't put in the classpath here, write //MyTest// not //org.lsc.MyTest//!): mvn -Dtest=MyTest test Don't run tests: mvn -Dmaven.test.skip=true someOtherTarget ===== Releasing ===== See these notes on [[release|doing a release]]. ===== Packaging ===== * See [[..:packaging:rpm]] for more details ; * See [[..:packaging:deb]] for more details ;