Where to deploy your Java classes and libraries
Implementing Java plugins
If you are writing Java classes that implement PolicyCenter plugin interfaces, those are known as Java plugins.
In the following directory listings, PLUGINDIR_OR_SHARED represents that the value can be either:
- a plugin directory name as defined in the plugin registry for that plugin
- the special value
shared. Usesharedif other Java class loaders or plugin directories need access to those classes or libraries.
For more about plugin directories, see Add an implementation to a Plugins Registry item.
If the code from version 7.0 uses entity data for anything, use the following locations:
- Put classes in
PolicyCenter/modules/configuration/plugins/PLUGINDIR_OR_SHARED/classes - Put libraries in
PolicyCenter/modules/configuration/plugins/PLUGINDIR_OR_SHARED/lib
From the previous two locations, PolicyCenter always performs legacy external
entity conversion and container (list or collection) conversion.
PolicyCenter/modules/configuration/plugins/shared/lib.If the code from version 7.0 does not use entity data for anything, use the following locations:
- Put classes in
PolicyCenter/modules/configuration/plugins/shared/basic/classes - Put libraries in
PolicyCenter/modules/configuration/plugins/shared/basic/lib
From the previous two locations, PolicyCenter never performs legacy external entity conversion or container (list or collection) conversion. You cannot use these locations if you use any entity data with the deprecated API.
If the code uses the PolicyCenter 8.0 Java API, use the following locations:
- Put classes in
PolicyCenter/modules/configuration/plugins/PLUGINDIR_OR_SHARED/basic/classes - Put libraries in
PolicyCenter/modules/configuration/plugins/PLUGINDIR_OR_SHARED/basic/lib
In the Java API 8.0, external entity conversion and container conversion is unnecessary.
Java classes and libraries to call from arbitrary Gosu code
In version 8.0, as in previous releases, you can deploy Java classes and libraries for use by arbitrary Gosu code in Studio. In other words, in addition to writing plugin code in Java, you can write other Java classes and call them from Gosu.
In the following directory listings, GOSU_OR_SHARED represents that
the value can be either Gosu
or shared. Carefully note
the capitalization of the two words. Use shared if other Java class loaders
or plugin directories need access to those classes or libraries.
If the code from version 7.0 uses entity data for anything, use the following locations:
- Put classes in
PolicyCenter/modules/configuration/plugins/GOSU_OR_SHARED/classes - Put libraries in
PolicyCenter/modules/configuration/plugins/GOSU_OR_SHARED/lib
From the previous two locations, PolicyCenter always performs legacy external entity conversion and container (list or collection) conversion.
If the code from version 7.0 does not use entity data for anything, use the following locations:
- Put classes in
PolicyCenter/modules/configuration/plugins/Gosu/classes - Put libraries in
PolicyCenter/modules/configuration/plugins/Gosu/libFrom the previous two locations, PolicyCenter always performs legacy external entity conversion and container (list or collection) conversion.
- Put classes in
PolicyCenter/modules/configuration/plugins/shared/basic/classes - Put libraries in
PolicyCenter/modules/configuration/plugins/shared/basic/libFrom the previous two locations, PolicyCenter never performs legacy external entity conversion or container (list or collection) conversion. You cannot use these locations if you use any entity data with the deprecated API.
If the code uses the PolicyCenter 8.0 Java API, use the following locations:
- Put classes in
PolicyCenter/modules/configuration/plugins/GOSU_OR_SHARED/basic/classes - Put libraries in
PolicyCenter/modules/configuration/plugins/GOSU_OR_SHARED/basic/lib
In the Java API 8.0, external entity conversion and container conversion is unnecessary.
