Red Hat Bugzilla – Bug 170126
need a uniform way to specify per-user and per-app SDKs and SPIs
Last modified: 2013-07-10 11:40:37 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20041228 Firefox/1.0 Fedora/1.0-8
Description of problem:
There should be a uniform way to specify per-user and per-app defaults for Java settings.
Currently system-wide default SDKs and SPIs are managed by alternatives, which works well for apps that don't require specific versions. Apps and users that do require special versions need to roll their own wrapper scripts. It would be more convenient if there were a uniform way to override the system defaults.
One possible implementation strategy would be per-app settings in
Java packages that had special runtime requirements could drop config files in there that define the overrides.
In addition, there could be ~/.java/applications.d where users could override system and app-specific settings.
Then there would be a shell fragment included in java-functions, included in each app's wrapper script, that would calculate the app's settings, first reading the system-wide defaults, then overriding with any app-specific and user-specific settings.
Note that user-specific SDK settings are currently supported in this manner, using /etc/java/java.conf and ~/.java/java.conf. This mechanism just need to be generalized to include the app layer, as well as SPIs and other configurable settings.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. try running a big java app with non-default SPI settings
Given the state of java today... should this RFE remain open?
Adding email@example.com to the cc list as the manager of the disabled user firstname.lastname@example.org who reported this bug
This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component.
As original report specified, user-specific configuration is already supported. Users can store their settings in ~/.java/java.conf.
Application-specific settings are quite interesting and would be useful in some cases (like enabling JDK 8 by default while using JDK 7 for applications that are known not to work with JDK 8, until they are fixed).
Actually, application-specific settings are already supported. Application foo can install system-wide config file /etc/foo.conf. Users can place application-specific settings in $HOME/.foorc. I'm closing this bug.