GithubHelp home page GithubHelp logo

classicvalues / nb-javac Goto Github PK

View Code? Open in Web Editor NEW

This project forked from oracle/nb-javac

0.0 1.0 0.0 2.35 MB

nb-javac is the Java compiler plugin used by the Apache NetBeans Java Editor

License: GNU General Public License v2.0

Java 98.70% Roff 1.30%

nb-javac's Introduction

About nb-javac!

"nb-javac" is a patched version of OpenJDK "javac", i.e., the Java compiler. This has long been part of NetBeans, providing a highly tuned Java compiler specifically for the Java editor i.e., parsing and lexing for features such as syntax coloring, code completion.

Prerequisite

  • Git
  • Ant 1.9.9 or above
  • JDK 8 or above (to build nb-javac)
  • Apache Maven

Building nb-javac jar files

  1. Obtain the code with the following command
$ git clone https://github.com/oracle/nb-javac.git
  1. To get a specific version use the following command
$ git checkout <release_tag_name> 
  1. Run the below command to build nb-javac.
$ ant -f ./make/langtools/netbeans/nb-javac clean jar

Two jars namely javac-api*.jar and javac-impl*.jar are going to appear at location ./make/langtools/netbeans/nb-javac/dist/

  1. Run below command to zip the source code of nb-javac
$ ant -f ./make/langtools/netbeans/nb-javac zip-nb-javac-sources

Publishing to maven central / OSSRH

  1. Aquire an account for OSSRH from sonatype and get access to the target groupId See here: https://central.sonatype.org/pages/ossrh-guide.html

  2. Configure the maven installation so that the credentials are made available for the server with the id oss.sonatype.org

  3. Run

    ant -f ./make/langtools/netbeans/nb-javac publish-to-ossrh-snapshots -Dmaven.groupId=your.grp.id
    

    to publish snapshot artifacts (https://oss.sonatype.org/content/repositories/snapshots/)

  4. Run

    ant -f ./make/langtools/netbeans/nb-javac publish-to-maven-central -Dmaven.groupId=your.grp.id
    

    to stage the release, which will get promoted to maven central, after it has been manually released.

Installation/Usage

1. Copy jars by following commands

cp nb-javac/make/langtools/netbeans/nb-javac/dist/nb-javac-$ver-api.jar netbeans/java/libs.javacapi/external/nb-javac-$ver-api.jar
cp nb-javac/make/langtools/netbeans/nb-javac/dist/nb-javac-$ver-impl.jar netbeans/java/libs.javacimpl/external/nb-javac-$ver-impl.jar

2. Open Netbeans and activate Java SE by creating or opening a ant, maven or gradle then copy jars by these commands

cp nb-javac/make/langtools/netbeans/nb-javac/dist/nb-javac-$ver-impl.jar netbeans/nbbuild/testuserdir/modules/ext/nb-javac-$ver-impl.jar
cp nb-javac/make/langtools/netbeans/nb-javac/dist/nb-javac-$ver-api.jar netbeans/nbbuild/testuserdir/modules/ext/nb-javac-$ver-api.jar
touch netbeans/nbbuild/testuserdir/.lastmodified

Documentation

Help

  • Subscribe or mail the [email protected] list - Ask questions, find answers, and also help other users.
  • Subscribe or mail the [email protected] list - Join development discussions, propose new ideas and connect with contributors.

Contributing

See the Contributing Policy

Security

See the Security Policy

nb-javac's People

Contributors

akshay-gupta-19 avatar singh-akhilesh avatar matthiasblaesing avatar dbalek avatar lahodaj avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.