Comments (6)
gradlew
doesn't run in the target environment, it's part of the gradlew distribution.
from sls-packaging.
Then the bug must be elsewhere. Repro steps:
- Set JAVA_OPTS to
-Dhello=hi|touch my-file-here
- Restart the service
- Observe that
my-file-here
is created in the Java service's working directory
I have a service named alchemist-foundry
that has a shell script located at service/bin/alchemist-foundry
that looks rather similar to the gradlew
script here, though with a different header:
##############################################################################
##
## alchemist-foundry start up script for UN*X
##
##############################################################################
At the bottom that script contains these lines which seem to be where the bug is:
# Split up the JVM_OPTS And ALCHEMIST_FOUNDRY_OPTS values into an array, following the shell quoting and substitution rules
function splitJvmOpts() {
JVM_OPTS=("$@")
}
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $ALCHEMIST_FOUNDRY_OPTS
This must be used as part of the Gradle default start script task defined at https://github.com/palantir/gradle-java-distribution#packaging
from sls-packaging.
Ok, so it’s a bug in Gradle’s generated shell script. We could look at moving away from Gradle’s generated shell script, we probably want to do some things differently than it does anyway.
from sls-packaging.
Specifically https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt added in commit gradle/gradle@a7a8fec
from sls-packaging.
@uschi2000 is tracking this one
from sls-packaging.
Resolved in #85. We have another couple of updates to make before releasing, but this has now been addressed.
from sls-packaging.
Related Issues (20)
- Differing classloaders can cause distribution plugins to miss dependency recommendations from within the repository HOT 2
- Locking asset configuration with GCV does not work if subprojects define their own repos
- Distribution tarballs contain bogus empty go-init and go-java-launcher directories
- Allow a library to mark a dep as optional HOT 1
- Increase default JFR stack depth beyond the default (conservative) 64 frames
- Use Async JVM Unified Logging on JDK 17+ HOT 1
- Enable UseStringDeduplication where feasible HOT 1
- Add validation to add a service dependency for new conjure projects
- Generate a product-dependencies.lock file for Recommended Product Dependencies Plugin
- productDependencies configuration might be broken with $project versions HOT 1
- Use 'hybrid' as default with java 11 and shenandoah with java 12
- var/log and var/run not created in distributions HOT 1
- sls-packaging Default JVM arguments are not applied in launcher scripts
- Implicit dependency on latest Gradle HOT 1
- Remove product dependency warning if higher version
- Support disabling inferred product dependencies HOT 3
- Overriding init.sh results in two init.sh headers in the sls.tgz HOT 5
- Remove gradle workaround HOT 1
- createManifest "succeeds" when ran with mismatched version of Java HOT 2
- Cannot easily override GC settings via configuration HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sls-packaging.