Skip to content

JetBrains/nailgun

 
 

Repository files navigation

nailgun

This repository is a fork of the original Nailgun project, used as a dependency for the Compile Server subsystem in the IntelliJ Scala Plugin. It features code changes that are uniquely tailored to the needs of the Scala plugin.


Note: Nailgun is based on original code developed by Marty Lamb. In October, 2017, Marty transferred the repository to Facebook, where it is currently maintained by Buck team. Nailgun will remain available under the Apache license, version 2.0.


Build and Installation

Nailgun is a client, protocol, and server for running Java programs from the command line without incurring the JVM startup overhead.

Programs run in the server (which is implemented in Java), and are triggered by the client (written in C), which handles all I/O.

The server and examples are built using maven. From the project directory, "mvn clean install" will do it.

The client is built using make. From the project directory, "make && sudo make install" will do it. To create the windows client you will additionally need to "make ng.exe".

This repository contains implementations of a nailgun client in Python and in C.

For additional client implementations in other languages, see:

  • snailgun, a client implementation written in Scala that compiles to native.
  • railgun, a client implementation written in Ruby.

For more information, see the nailgun website.

License

Apache License 2.0

Legal

About

Nailgun is a client, protocol, and server for running Java programs from the command line without incurring the JVM startup overhead.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 71.3%
  • Python 18.2%
  • C 9.2%
  • Other 1.3%