This page collects thoughts about the standardization of common configuration items for Java applications.
Packages that could benefit from this discussion are all Java applications, especially server applications like Tomcat, Jetty, Hadoop / HBase / ZooKeeper, glassfish, nailgun(?) and others that are not yet packaged for Debian.
Items that could be made configurable in a standardized fashion:
On the JVM level:
- max heap size, min heap size
- start jmx?
- proxy settings ?
enable debugger? This is handled by java-wrappers through the $JAVA_DEBUGGER environment variable.
- use security?
- system user / group
- override jvm to use
- which garbage collection to use
- additional items for the classpath
- exclusions for the classpath (must be done by some text processing by us)
- system properties to set
- environment variables to set?
- restart process on exit? (I use the daemon package, where this could be specified)
On the wrapper level:
the interface for additional features of jarwrappers and java-wrappers should probably be harmonized (see above for debugging).
On the application level: Things in this area are not so easy to standardize because each application may handle it in different ways. However most applications use either Log4j or slf4j so we could for example standardize the Log4J settings.
- Logging information / configuration for the application logger?
Additionally we could also agree on a standard place to store STDOUT and STDERR