moditect / layrry

A Runner and API for Layered Java Applications
Apache License 2.0
332 stars 33 forks source link

Launcher scripts define explicit classpath #82

Open aalmiray opened 3 years ago

aalmiray commented 3 years ago

This will make it harder to update dependencies on the fly (such as adding a new config parser) by dropping a JAR into $LAYRRY_HOME/lib. One must edit the launcher script to update the classpath

Linux/OSX

 100   │ CLASSPATH="$BASEDIR"/etc:"$REPO"/layrry-config-yaml-1.0.0.Alpha1.jar:"$REPO"/layrry-config-1.0.0.Alpha1.jar:"$REPO"/os-maven-plugin-1.6.2.jar:"$REPO"/jsr305-3.0.2.jar:"$REPO"/compiler-0.9.7.jar:"$REPO"/snakeyaml-1.27.jar:"$REPO"/
       │ layrry-config-toml-1.0.0.Alpha1.jar:"$REPO"/toml-1.2.jar:"$REPO"/layrry-core-1.0.0.Alpha1.jar:"$REPO"/slf4j-simple-1.7.29.jar:"$REPO"/slf4j-api-1.7.30.jar:"$REPO"/shrinkwrap-resolver-impl-maven-3.1.4.jar:"$REPO"/shrinkwrap-resolv
       │ er-spi-maven-3.1.4.jar:"$REPO"/shrinkwrap-resolver-spi-3.1.4.jar:"$REPO"/maven-resolver-provider-3.6.3.jar:"$REPO"/javax.inject-1.jar:"$REPO"/maven-model-3.6.3.jar:"$REPO"/maven-model-builder-3.6.3.jar:"$REPO"/maven-artifact-3.6.
       │ 3.jar:"$REPO"/commons-lang3-3.11.jar:"$REPO"/maven-builder-support-3.6.3.jar:"$REPO"/org.eclipse.sisu.inject-0.3.4.jar:"$REPO"/maven-repository-metadata-3.6.3.jar:"$REPO"/maven-settings-3.6.3.jar:"$REPO"/maven-settings-builder-3.
       │ 6.3.jar:"$REPO"/maven-resolver-api-1.4.1.jar:"$REPO"/maven-resolver-impl-1.4.1.jar:"$REPO"/maven-resolver-spi-1.4.1.jar:"$REPO"/maven-resolver-util-1.4.1.jar:"$REPO"/maven-resolver-connector-basic-1.4.1.jar:"$REPO"/maven-resolver
       │ -transport-wagon-1.4.1.jar:"$REPO"/plexus-interpolation-1.25.jar:"$REPO"/plexus-utils-3.2.1.jar:"$REPO"/plexus-sec-dispatcher-1.4.jar:"$REPO"/plexus-cipher-1.7.jar:"$REPO"/wagon-provider-api-3.3.4.jar:"$REPO"/wagon-file-3.3.4.jar
       │ :"$REPO"/wagon-http-lightweight-2.12.jar:"$REPO"/wagon-http-shared-2.12.jar:"$REPO"/jsoup-1.12.1.jar:"$REPO"/commons-io-2.5.jar:"$REPO"/shrinkwrap-resolver-api-maven-3.1.4.jar:"$REPO"/shrinkwrap-resolver-api-3.1.4.jar:"$REPO"/dir
       │ ectory-watcher-0.13.0.jar:"$REPO"/jna-5.6.0.jar:"$REPO"/commons-compress-1.20.jar:"$REPO"/jcommander-1.78.jar:"$REPO"/layrry-launcher-1.0.0.Alpha1.jar

Windows

  75   │ set CLASSPATH="%BASEDIR%"\etc;"%REPO%"\layrry-config-yaml-1.0.0.Alpha1.jar;"%REPO%"\layrry-config-1.0.0.Alpha1.jar;"%REPO%"\os-maven-plugin-1.6.2.jar;"%REPO%"\jsr305-3.0.2.jar;"%REPO%"\compiler-0.9.7.jar;"%REPO%"\snakeyaml-1.27.j
       │ ar;"%REPO%"\layrry-config-toml-1.0.0.Alpha1.jar;"%REPO%"\toml-1.2.jar;"%REPO%"\layrry-core-1.0.0.Alpha1.jar;"%REPO%"\slf4j-simple-1.7.29.jar;"%REPO%"\slf4j-api-1.7.30.jar;"%REPO%"\shrinkwrap-resolver-impl-maven-3.1.4.jar;"%REPO%"
       │ \shrinkwrap-resolver-spi-maven-3.1.4.jar;"%REPO%"\shrinkwrap-resolver-spi-3.1.4.jar;"%REPO%"\maven-resolver-provider-3.6.3.jar;"%REPO%"\javax.inject-1.jar;"%REPO%"\maven-model-3.6.3.jar;"%REPO%"\maven-model-builder-3.6.3.jar;"%RE
       │ PO%"\maven-artifact-3.6.3.jar;"%REPO%"\commons-lang3-3.11.jar;"%REPO%"\maven-builder-support-3.6.3.jar;"%REPO%"\org.eclipse.sisu.inject-0.3.4.jar;"%REPO%"\maven-repository-metadata-3.6.3.jar;"%REPO%"\maven-settings-3.6.3.jar;"%RE
       │ PO%"\maven-settings-builder-3.6.3.jar;"%REPO%"\maven-resolver-api-1.4.1.jar;"%REPO%"\maven-resolver-impl-1.4.1.jar;"%REPO%"\maven-resolver-spi-1.4.1.jar;"%REPO%"\maven-resolver-util-1.4.1.jar;"%REPO%"\maven-resolver-connector-bas
       │ ic-1.4.1.jar;"%REPO%"\maven-resolver-transport-wagon-1.4.1.jar;"%REPO%"\plexus-interpolation-1.25.jar;"%REPO%"\plexus-utils-3.2.1.jar;"%REPO%"\plexus-sec-dispatcher-1.4.jar;"%REPO%"\plexus-cipher-1.7.jar;"%REPO%"\wagon-provider-a
       │ pi-3.3.4.jar;"%REPO%"\wagon-file-3.3.4.jar;"%REPO%"\wagon-http-lightweight-2.12.jar;"%REPO%"\wagon-http-shared-2.12.jar;"%REPO%"\jsoup-1.12.1.jar;"%REPO%"\commons-io-2.5.jar;"%REPO%"\shrinkwrap-resolver-api-maven-3.1.4.jar;"%REPO
       │ %"\shrinkwrap-resolver-api-3.1.4.jar;"%REPO%"\directory-watcher-0.13.0.jar;"%REPO%"\jna-5.6.0.jar;"%REPO%"\commons-compress-1.20.jar;"%REPO%"\jcommander-1.78.jar;"%REPO%"\layrry-launcher-1.0.0.Alpha1.jar

We could switch to the * notation supported since JDK 7.