mirror of https://github.com/pf4j/pf4j.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Decebal Suiu
5587adb63a
|
7 years ago | |
---|---|---|
.. | ||
api | ||
app | 7 years ago | |
plugins | 7 years ago | |
.gitignore | ||
README.md | ||
build.gradle | ||
gradle.properties | ||
settings.gradle |
README.md
PF4J Gradle Demo
This demo assumes that you know the basics of Gradle (Please look at gradle for more info)
Setup/Build
- Clone the repo
- Go to demo_gradle
cd demo_gradle
- run
gradle build
- This will produce one jar, named app-plugin-demo-uberjar.jar, located in the
app/build/libs/
directory and three plugins zips located inbuild/plugins
directory. - The plugins are
plugin-hello-plugin-0.0.1.zip
,plugin-KotlinPlugin-1.0.0.zip
andplugin-welcome-plugin-0.0.1.zip
Run the demo
- Run
java -jar -Dpf4j.pluginsDir=build/plugins app/build/libs/app-plugin-demo-uberjar.jar
- pf4j.pluginsDir: is where the plugins are located
- The demo's output should look similar to: (Please see
Boot#main()
for more details)
demo_gradle $ java -jar -Dpf4j.pluginsDir=build/plugins app/build/libs/app-plugin-demo-uberjar.jar
[main] INFO org.pf4j.demo.Boot - ########################################
[main] INFO org.pf4j.demo.Boot - PF4J-DEMO
[main] INFO org.pf4j.demo.Boot - ########################################
[main] INFO org.pf4j.DefaultPluginStatusProvider - Enabled plugins: []
[main] INFO org.pf4j.DefaultPluginStatusProvider - Disabled plugins: []
[main] INFO org.pf4j.DefaultPluginManager - PF4J version 0.0.0 in 'deployment' mode
[main] INFO org.pf4j.AbstractPluginManager - Plugin 'welcome-plugin@0.0.1' resolved
[main] INFO org.pf4j.AbstractPluginManager - Plugin 'KotlinPlugin@1.0.0' resolved
[main] INFO org.pf4j.AbstractPluginManager - Plugin 'hello-plugin@0.0.1' resolved
[main] INFO org.pf4j.AbstractPluginManager - Start plugin 'welcome-plugin@0.0.1'
[main] INFO org.pf4j.demo.welcome.WelcomePlugin - WelcomePlugin.start()
[main] INFO org.pf4j.demo.welcome.WelcomePlugin - WELCOMEPLUGIN
[main] INFO org.pf4j.AbstractPluginManager - Start plugin 'KotlinPlugin@1.0.0'
[main] INFO org.pf4j.demo.kotlin.KotlinPlugin - KotlinPlugin.start()
[main] INFO org.pf4j.demo.kotlin.KotlinPlugin - KOTLINPLUGIN
[main] INFO org.pf4j.AbstractPluginManager - Start plugin 'hello-plugin@0.0.1'
[main] INFO org.pf4j.demo.hello.HelloPlugin - HelloPlugin.start()
[main] INFO org.pf4j.demo.Boot - Plugindirectory:
[main] INFO org.pf4j.demo.Boot - build/plugins
[main] INFO org.pf4j.demo.Boot - Found 3 extensions for extension point 'org.pf4j.demo.api.Greeting'
[main] INFO org.pf4j.demo.Boot - >>> Whazzup
[main] INFO org.pf4j.demo.Boot - >>> Welcome
[main] INFO org.pf4j.demo.Boot - >>> Hello
[main] INFO org.pf4j.demo.Boot - Extensions added by plugin 'welcome-plugin':
[main] INFO org.pf4j.demo.Boot - Extensions added by plugin 'KotlinPlugin':
[main] INFO org.pf4j.demo.Boot - Extensions added by plugin 'hello-plugin':
[main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'hello-plugin@0.0.1'
[main] INFO org.pf4j.demo.hello.HelloPlugin - HelloPlugin.stop()
[main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'KotlinPlugin@1.0.0'
[main] INFO org.pf4j.demo.kotlin.KotlinPlugin - KotlinPlugin.stop()
[main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'welcome-plugin@0.0.1'
[main] INFO org.pf4j.demo.welcome.WelcomePlugin - WelcomePlugin.stop()