Pure Native

NewJ for C++
Overview | Features | FAQ | Free to Develop | Purchase

NewJ implements the core Java API in 100% native C++, for C++. It is the easiest, most natural way to use the Java API in your new or existing C++ applications. Plus, your applications can take advantage of the Java API without requiring the installation or deployment of a JRE.

The Features of Java in 100% Native C++

NewJ Library implements the core Java APIs (java::lang, java::util, java::io) in C++, for C++. NewJ Desktop also includes a 100% native C++ implementation of AWT. Both NewJ Library and NewJ Desktop support unique features of the Java language in ISO C++, such as automatic memory management and jagged arrays. NewJ makes it possible for you to take existing Java source code and convert, or port, it to native C++ and incorporate it into existing applications. You can also develop new native C++ applications that take advantage of the Java API and Java language features.

NewJ Advantages for Existing Applications

Do you need to leverage the Java API in your new or existing C++ application? NewJ provides significant advantages over other approaches, such as JNI. These advantages include:

  • Higher performance, no JNI or VM overhead.
  • Lower memory and resource requirements, measured in K not MBs.
  • Effortless deployment, no VM or JRE to install or deploy.
  • Seamlessly integrates with existing C++, no JNI to learn or write.
  • Simplified single-language debugging, use your existing tools.
  • Robust application security and increased reliability.
  • Intellectual property protection, no bytecodes.
  • Flexible licensing, similar to traditional C++ libraries
  • .

These advantages allow you to focus on your application instead of spending time integrating it. No need to learn new tools or languages. Nothing new to deploy. What could be easier?

NewJ Advantages for Java Applications

Not satisfied with the state of Java performance and application deployment? NewJ allows you to easily convert, or port, existing Java applications to 100% native C++. Along with the advantages detailed above, this makes it possible to use the Java API to develop all sorts of demanding applications, especially for performance critical and resource constrained environments. This makes the Java API suitable for practically any development endeavor.

What Will You Build With NewJ?

NewJ can be used in a wide range of existing C++ applications. In fact, it even includes application wizards and samples to get you started. NewJ supports the following existing applications:

  • ISO C++ console applications.
  • Win32 GUI applications.
  • MFC GUI applications.
  • Applications developed with other toolkits and frameworks.

NewJ can be used to develop a wide variety of applications. Potential applications include:

  • Rich client AWT applications. (NewJ Desktop only)
  • Rich client SWT applications using SWT Camp, which is available separately. (NewJ Desktop only)
  • USB flash-drive runnable applications.
  • Embedded applications.
  • Performance-critical Web server applications.
  • Network-centric applications.
  • Headless applications.

NewJ can be used to bring the Java API to existing C++ applications. Or, you can use NewJ to make an entirely new creation. What will you build with NewJ?

Requires: Windows XP/2000/NT4/ME/98/95; Microsoft Visual C++ 9.0 (Visual Studio 2008), Microsoft Visual C++ 8.0 (Visual Studio 2005), Visual C++ 7.1 (Visual Studio .NET 2003) or Microsoft Visual C++ 6.0.

Download NewJ Desktop Trial Edition

Download NewJ Library Trial Edition

Purchase NewJ Library Personal or Full Edition

NewJ is neither a product of or nor is endorsed by Sun Microsystems, Inc. NewJ implements the java.lang, java.io, and java.util packages according to the Java 2 Platform, Standard Edition, v1.2.2 API Specification as published by Sun Microsystems, Inc. Behavioral considerations of the NewJ native library implementation can be found here.

Protected by U.S. Patent No. 7,346,897