Comments (5)
Closing all issues older than 6 months; please reopen if it is still relevant
from nailgun.
please reopen, i can't reopen
from nailgun.
Usually people write their own wrappers for that (for example, that is how it is done in Buck) but you are welcome to come up with a PR.
from nailgun.
I think it would be interesting if this is solved in the nailgun repository instead of the downstream tools. It would allow us tooling authors to reuse code and avoid writing (and testing) it ourselves.
from nailgun.
@jvican Absolutely great idea. N-downstreams shouldn't reinvent the wheel with layers of scripting and neither should casual DIY builders from source to get something going.
I was working on a replacement nailgun Homebrew formula when I encountered this issue and the Java 18+ Security Manager removal issue. Currently, the original formula is deprecated and at risk for removal.
It should be doable by adjusting ng
:
- Add a new script or executable
ng-server
to Do The Right Thing™. If someone wants to get adventurous, write it in C99 instead of Bourne shell/Py - Add a switch
--nailgun-server-autostart true|false
and/or environment variableNAILGUN_SERVER_AUTOSTART
tong
to enable/disableng-server
auto-spawning (enabled by default to be sensible) - Pass
ng
environment tong-server
. Obviously, only the first run - Perhaps leave a note to the user to restart the server if the environment is important, and that the tty will/could be different between
ng-server
and other instances ofng
. Very adventurous to add environment communication betweenng
andng-server
/NGServer to work more intuitively in more use-cases
For ng-server
:
- optional
NAILGUN_SERVER
- ip (should default to127.0.0.1
/::1
rather than all interfaces for security reasons) - optional
NAILGUN_PORT
- port (defaults to 2113) - optional
JAVA_HOME
- should be respected to locate{{JAVA_HOME}}/bin/java
, but also on macOS it's always a call tojava
that handles JVM selection viaJAVA_HOME
- required new
NAILGUN_SERVER_JAR
- abs- or script-relative path of the server .jar to throw into the-cp
as it will vary widely on systems ng-server
also needs to disown the java process so it backgrounds properly
Prior art on ng servers:
- Bloop
- JRuby
from nailgun.
Related Issues (20)
- How to properly terminate the nail? HOT 2
- Overhead of SecurityManager HOT 17
- Publish nailgun to maven central HOT 2
- ng.py crashes in a cygwin environment when trying to reference Kernel32 dll
- Problem with nested connections to a unix domain socket HOT 2
- Publish 0.9.3 artifacts to a public repository HOT 2
- Nailgun server crashes HOT 8
- NGServer or ng client changes path delimiters on output HOT 2
- Documentation is lacking HOT 2
- Running `mvn package` fails with JavaDoc errors HOT 1
- Support Java versions greater than 8?
- Run nailgun without classpath as code comes on the fly HOT 1
- JDK 11/12 Support HOT 2
- Remove / tone down the scary 'NOT MAINTAINED' header
- Server's sockets are not shut down in an orderly fashion; sending heartbeats can occasionally fail HOT 1
- Release? HOT 1
- Unused value
- Make error HOT 1
- still mantained? HOT 2
- Mirroring policy breaks repositories HOT 2
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 nailgun.