Java

Sections on this page: Intro, M4L NetBeans plugin, getting the plugin, link summary, legal concerns.

Java logoJava is both a programming language as well as a so called “runtime environment” (= a program which you need to use some kind of software). In other words: you need to have Java installed before you can actually use any software which was developed in Java.

It was originally developed by Sun Microsystems and has seen quite a steady development as well as an ongoing expanding fanbase. If you want to write programs in Java then all you have to do is pick up the so called Java Development Kit (“JDK”), get yourself a good editor (I’d advice an IDE such as NetBeans) and you’re good to go.

Even learning Java doesn’t have to be too hard; just go to thejavatutorial.com and read up all about it. Or download the tutorial and check up on it at your own leisure.

If you merely want to use Java software then you’ll need the Java Runtime Environment (“JRE”). This can be downloaded from Java.com but watch out for any extra software they try to install on your computer!

Java and synthesizers?

Now you may be wondering what a programming language such as Java is doing so prominently on a website like mine. Its simple really: supporting Max (for Live). Max is a programming environment which is fully aimed at providing multimedia solutions. But there are aspects where it won’t be able to cope; take for example accessing the clipboard of the OS it runs on.

And that is where so called externals can come into play. Max provides support for both Javascript and Java through the use of the [js] and [jmx] objects. And since Java is my all time favourite programming language I decided to put up a page devoted to programming Java externals for Max / Max for Live.

I’ll publish some simple Java introduction tutorials, share some tips and tricks, and provide access to the SynthFan Max tookit project: a Java library which provides several tools which can be used in Max and Max for Live. For example; the ‘info.synthfan.java.clipboard‘ class provides direct access to the operating systems clipboard.

Max 5 API NetBeans plugin

This is a plugin which I made for NetBeans 7.2 and up. It provides the Max 5 (“Max for Live”) Java APIs which are required to develop externals for Max (for Live) with or without Jitter support, and it adds several enhancements which will make it a whole lot easier for you to develop Max / M4L externals:

The new NetBeans Max projects

The 2 new Max project types available in the NetBeans IDE.

What my plugin does:

  • Sets up both max.jar as well as jitter.jar; required for programming Max externals.
  • Adds 2 new project types which can be seen above.
  • Adds 2 templates; one for creating a standard Max object (an object with one inlet and outlet as well as the info outlet), and one for creating a Max object without any outlets.
  • Adds 6 new shortcuts to quickly setup methods which are required to handle incoming signals. For example: typing “maxlist” with the NetBeans ‘expansion key’ will create a method which will accept and process lists sent into the [mxj] object.
  • Provides help within NetBeans which explains all provided shortcuts.
  • Adds SynthFan.info as an update centre. Install once and you will be automatically informed about any new updates. Installing those will take but a few mouse clicks.

How to install the plugin

The quickest way is to click the download link here. You’ll get an NBM file (NetBeans Module) which you can install as such by using the ‘Tools -> Plugins’ menu option, then selecting the “Downloaded” tab.

Click “Add Plugins…” and point to the location where you stored the Max 5 API plugin. Then you’ll see something like this:

Selecting the plugin for manual install

This is what it looks like when installing the plugin manually.

Select, click Open and you’re done.

Alternative way to download

NetBeans is just as extensive as Max itself is; as such there are more ways to get this critter…  If you go to the plugin section as I described above you can also go to the “Settings” tab. Click the ‘Add’ button near the middle right side of the screen and when asked for an URL add this:

http://synthfan.info/javase/max5-plugin-updates.xml

The URL is also a link so you should be able to right click and copy it.

After you added this then my plugin will become available in the list of ‘Available plugins’, like so:

My NetBeans list of available plugins.

How it looks like when manually adding my plugin as an update centre.

Simply follow the regular procedure as you normally would and it’ll be installed.

Link summary

You can download the plugin using: this link.
You can also setup an update centre using: this link to the update file.
You can learn more and/or download NetBeans from NetBeans.org.
You can grab Java for common usage from Java.com.
And you can get the Java SDK (to develop Java programs) from here.

Legal issues

This plugin is being provided and maintained with the explicit consent from the Cycling ’74 company. Please keep in mind that this project is one fully carried by the SynthFan.info website and as such you should direct any questions or reports about bugs or other issues to me; not to Cycling ’74 because they take no part in this project; apart from giving me permission to distribute their Java API libraries.

There is a chance that this project gets mentioned in their forums, but apart from that there is no further association.

More to follow soonish…