Serverless provides a great model for accelerating app development, but developers want to do it using the programming languages and development tools of their choice. Ever since we first released Azure Functions, support for Java has been a top request. Today, at JavaOne in San Francisco, we’re announcing the public preview of Java support in Azure Functions.

With the recently announced capability to run the open source Azure Functions runtime on cross-platform .NET Core, we’ve architected our runtime to allow a broadened support for different programming languages. Java is the first new language we are introducing in this public preview. The new Java runtime will share all the differentiated features provided by Azure Functions, such as the wide range of triggering options and data bindings, serverless execution model with auto-scale, as well as pay-per-execution pricing.

As a Java developer, you don’t need to use any new tools to develop using Azure Functions. In fact, with our newly released Maven plugin, you can create, build, and deploy Azure Functions from your existing Maven-enabled projects. The new Azure Functions Core Tools will support you to run and debug your Java Functions code locally on any platform.

Figure 1: Azure Functions project in Java created using Maven Archetype

What is even more exciting is that popular IDEs and editors like Eclipse, IntelliJ, and VS Code can be used to develop and debug Azure Functions locally.

Figure 2: A serverless function in Java debugged using Visual Studio Code

To get started, look at the Azure Functions Java tutorial to create your first Java function and deploy it to Azure using Maven and Jenkins today. Also, if you’re attending JavaOne, join our sessions and swing by the Azure booth to learn more about building serverless apps in Azure with Java!

Next steps