| <!doctype html> |
| <html class="no-js" lang="en" dir="ltr"> |
| <head> |
| <meta charset="utf-8"> |
| <meta http-equiv="x-ua-compatible" content="ie=edge"> |
| <title>Master Your Scripting Skills with the New Tutorial!</title> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| <meta name="description" content="Apache NetBeans blog index"> |
| <meta name="author" content="Apache NetBeans"> |
| <meta name="description" content="Apache NetBeans blog index"> |
| <meta name="keywords" content="Apache NetBeans blog index"> |
| <meta name="generator" content="Apache NetBeans"> |
| <link rel="stylesheet" href="../../../../../_/css/font-awesome.min.css"> |
| <link rel="alternate" type="application/atom+xml" title="Apache NetBeans Blog" href="https://netbeans.apache.org/blogs/atom" /> |
| <link rel="stylesheet" href="../../../../../_/css/highlightjs/default.min.css"> |
| <link rel="stylesheet" href="../../../../../_/css/netbeans.css"> |
| <link rel="apple-touch-icon" sizes="180x180" href="../../../../../_/images/fav/apple-touch-icon.png"> |
| <link rel="icon" type="image/png" sizes="32x32" href="../../../../../_/images/fav/favicon-32x32.png"> |
| <link rel="icon" type="image/png" sizes="16x16" href="../../../../../_/images/fav/favicon-16x16.png"> |
| <link rel="manifest" href="../../../../../_/images/fav/site.webmanifest"> |
| <link rel="mask-icon" href="../../../../../_/images/fav/safari-pinned-tab.svg" color="#5bbad5"> |
| <meta name="msapplication-TileColor" content="#ffc40d"> |
| <meta name="theme-color" content="#ffffff"> |
| <link href="../../../../../_/css/font-open-sans.css" rel="stylesheet"> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| http://www.apache.org/licenses/LICENSE-2.0 |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| </head> |
| <body> |
| <div class="title-bar" data-responsive-toggle="responsive-menu" data-hide-for="medium"> |
| <button type="button" data-toggle="responsive-menu"><i style='font-size: 32px; color: #fff; padding: 8px' class='fa fa-bars'></i></button> |
| <div class="title-bar-title">Apache NetBeans</div> |
| </div> |
| <div class="top-bar" id="responsive-menu"> |
| <div class='top-bar-left'> |
| <a class='title' href="../../../../../index.html"><img src='../../../../../_/images/apache-netbeans.svg' style='padding: 8px; height: 48px;'> Apache NetBeans</a> |
| </div> |
| <div class="top-bar-right"> |
| <ul class="vertical medium-horizontal menu" data-responsive-menu="drilldown medium-dropdown"> |
| <li> <input id="search-input" type="text" placeholder="Search the docs"> </li> |
| <li> <a href="../../../../../front/main/community">Community</a> </li> |
| <li> <a href="../../../../../front/main/participate">Participate</a> </li> |
| <li> <a href="../../../../../front/main/blogs">Blog</a></li> |
| <li> <a href="../../../../../front/main/help">Get Help</a> </li> |
| <li> <a href="https://plugins.netbeans.apache.org/">Plugins</a> </li> |
| <li> <a href="../../../../../front/main/download">Download</a> </li> |
| </ul> |
| </div> |
| </div> |
| |
| <!-- src/templates/news --> |
| <section class="hero news alternate"> |
| <div class='grid-container'> |
| <div class='cell'> |
| <div class="annotation">Latest release</div> |
| <h1>Apache NetBeans 27</h1> |
| <p><a class="button success" href="../../../../../front/main/download/nb27">Download</a></p> |
| </div> |
| </div> |
| </section> |
| <div class='grid-container main-content'> |
| <article class="doc"> |
| <h1 class="sect1">Master Your Scripting Skills with the New Tutorial!</h1> |
| <div class="blogdate">Thursday January 24, 2019</div> |
| <div class="paragraph"> |
| <p>Enhanced <a href="https://bits.netbeans.org/dev/javadoc//org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html">scripting tutorial</a> has just |
| become part of <a href="../../../" class="xref page">Apache NetBeans</a> documentation. It contains various examples showing how to communicate from <strong>Java</strong> with <strong>JavaScript</strong>, <strong>Python</strong> and other languages. |
| The following topics are covered:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Setup">Setup</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Get_started">Get started</a></p> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Guest_language_">Guest language "Hello World!"</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#It’s_a_polyglot_world">It’s a polyglot world</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Add_a_language">Add a language</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Hello_World_in_Python_and_JavaScript">Hello World in Python and JavaScript</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Cast_Array_to_List">Cast Array to List</a></p> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Call_guest_language_functions_from_Java">Call guest language functions from Java</a></p> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Define_and_call_a_JavaScript_function">Define and call a JavaScript function</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Define_and_call_a_Python_function">Define and call a Python function</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Call_an_existing_R_function">Call an existing R function</a></p> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Call_multiple_guest_language_functions_with_shared_state_from_Java">Call multiple guest language functions with shared state from Java</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Access_guest_language_classes_from_Java">Access guest language classes from Java</a></p> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Access_a_JavaScript_class">Access a JavaScript class</a></p> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Access_guest_language_data_structures_from_Java">Access guest language data structures from Java</a></p> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Access_a_JavaScript_Array">Access a JavaScript Array</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Access_a_JavaScript_JSON_structure">Access a JavaScript JSON structure</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#View_any_Object_as_Map">View any Object as Map</a></p> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Access_Java_from_guest_languages">Access Java from guest languages</a></p> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Access_Java_fields_and_methods_from_JavaScript">Access Java fields and methods from JavaScript</a></p> |
| </li> |
| <li> |
| <p><a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html#Access_Java_constructors_and_static_methods_from_JavaScript">Access Java constructors and static methods from JavaScript</a></p> |
| </li> |
| </ul> |
| </div> |
| </li> |
| </ul> |
| </div> |
| <div class="paragraph"> |
| <p>While the primary use-case for this <a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-api-scripting/">enhanced scripting API</a> is to simplify usage of scripting languages in NetBeans based applications, the API itself is standalone and can be used outside of NetBeans in any project. We are working on making it available in the Maven central repository.</p> |
| </div> |
| <div class="paragraph"> |
| <p>Read more in the <a href="https://bits.netbeans.org/dev/javadoc/org-netbeans-libs-graalsdk/org/netbeans/libs/graalsdk/package-summary.html">online tutorial</a>.</p> |
| </div> |
| <section class='tools'> |
| <ul class="menu align-center"> |
| <li><a title="Facebook" href="https://www.facebook.com/NetBeans"><i class="fa fa-md fa-facebook"></i></a></li> |
| <li><a title="Twitter" href="https://twitter.com/netbeans"><i class="fa fa-md fa-twitter"></i></a></li> |
| <li><a title="Github" href="https://github.com/apache/netbeans"><i class="fa fa-md fa-github"></i></a></li> |
| <li><a title="YouTube" href="https://www.youtube.com/user/netbeansvideos"><i class="fa fa-md fa-youtube"></i></a></li> |
| <li><a title="Atom Feed" href="https://netbeans.apache.org/blogs/atom"><i class="fa fa-mf fa-rss"></i></a></li> |
| <li><a title="Slack" href="https://tinyurl.com/netbeans-slack-signup/"><i class="fa fa-md fa-slack"></i></a></li> |
| <li><a title="Issues" href="https://github.com/apache/netbeans/issues"><i class="fa fa-mf fa-bug"></i></a></li> |
| </ul> |
| <ul class="menu align-center"> |
| <li><a href="https://github.com/apache/netbeans-antora-site/edit/main/modules/ROOT/pages/blogs/entry/master-your-scripting-skills-with.adoc" title="See this page in github"><i class="fa fa-md fa-edit"></i> See this page in GitHub.</a></li> |
| </ul> |
| </section> |
| </article> |
| </div> |
| <div class='grid-container incubator-area' style='margin-top: 64px'> |
| <div class='grid-x grid-padding-x'> |
| <div class='large-auto cell text-center'> |
| <a href="https://www.apache.org/"> |
| <img style="height: 60px" title="Apache Software Foundation" src="../../../../../_/images/asf_logo_wide.svg" /> |
| </a> |
| </div> |
| <div class='large-auto cell text-center'> |
| <a href="https://www.apache.org/events/current-event.html"> |
| <img style="width:234px; height: 60px;" title="Apache Software Foundation current event" src="https://www.apache.org/events/current-event-234x60.png"/> |
| </a> |
| </div> |
| </div> |
| </div> |
| <footer> |
| <div class="grid-container"> |
| <div class="grid-x grid-padding-x"> |
| <div class="large-auto cell"> |
| <h1><a href="../../../../../front/main/about">About</a></h1> |
| <ul> |
| <li><a href="../../../../../front/main/community/who">Who's Who</a></li> |
| <li><a href="https://www.apache.org/foundation/thanks.html">Thanks</a></li> |
| <li><a href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li> |
| <li><a href="https://www.apache.org/security/">Security</a></li> |
| </ul> |
| </div> |
| <div class="large-auto cell"> |
| <h1><a href="../../../../../front/main/community">Community</a></h1> |
| <ul> |
| <li><a href="../../../../../front/main/community/mailing-lists">Mailing lists</a></li> |
| <li><a href="../../../../../front/main/community/committer">Becoming a committer</a></li> |
| <li><a href="../../../../../front/main/community/events">NetBeans Events</a></li> |
| <li><a href="https://www.apache.org/events/current-event.html">Apache Events</a></li> |
| </ul> |
| </div> |
| <div class="large-auto cell"> |
| <h1><a href="../../../../../front/main/participate">Participate</a></h1> |
| <ul> |
| <li><a href="../../../../../front/main/participate/submit-pr">Submitting Pull Requests</a></li> |
| <li><a href="../../../../../front/main/participate/report-issue">Reporting Issues</a></li> |
| <li><a href="../../../../../front/main/participate/#documentation">Improving the documentation</a></li> |
| </ul> |
| </div> |
| <div class="large-auto cell"> |
| <h1><a href="../../../../../front/main/help">Get Help</a></h1> |
| <ul> |
| <li><a href="../../../../../front/main/help/#documentation">Documentation</a></li> |
| <li><a href="../../../../../wiki/main/wiki">Wiki</a></li> |
| <li><a href="../../../../../front/main/help/#support">Community Support</a></li> |
| <li><a href="../../../../../front/main/help/commercial-support">Commercial Support</a></li> |
| </ul> |
| </div> |
| <div class="large-auto cell"> |
| <h1><a href="../../../../../front/main/download">Download</a></h1> |
| <ul> |
| <li><a href="../../../../../front/main/download">Releases</a></li> |
| <li><a href="https://plugins.netbeans.apache.org/">Plugins</a></li> |
| <li><a href="../../../../../front/main/download/#_daily_builds_and_building_from_source">Building from source</a></li> |
| <li><a href="../../../../../front/main/download/#_older_releases">Previous releases</a></li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| </footer> |
| <div class='footer-disclaimer'> |
| <div class="footer-disclaimer-content"> |
| <p>Copyright © 2017-2025 <a href="https://www.apache.org">The Apache Software Foundation</a>.</p> |
| <p>Licensed under the Apache <a href="https://www.apache.org/licenses/">license</a>, version 2.0</p> |
| <div style='max-width: 40em; margin: 0 auto'> |
| <p>Apache, Apache NetBeans, NetBeans, the Apache feather logo and the Apache NetBeans logo are trademarks of <a href="https://www.apache.org">The Apache Software Foundation</a>.</p> |
| <p>Oracle and Java are registered trademarks of Oracle and/or its affiliates.</p> |
| <p>The Apache NetBeans website conforms to the <a href="https://privacy.apache.org/policies/privacy-policy-public.html">Apache Software Foundation Privacy Policy</a></p> |
| </div> |
| </div> |
| </div> |
| |
| |
| <script src="../../../../../_/js/vendor/lunr.js"></script> |
| <script src="../../../../../_/js/search-ui.js" id="search-ui-script" data-site-root-path="../../../../.." data-snippet-length="100" data-stylesheet="../../../../../_/css/search.css"></script> |
| <script async src="../../../../../search-index.js"></script> |
| <script src="../../../../../_/js/vendor/jquery.min.js"></script> |
| <script src="../../../../../_/js/vendor/what-input.min.js"></script> |
| <script src="../../../../../_/js/vendor/foundation.min.js"></script> |
| <script src="../../../../../_/js/vendor/jquery.colorbox-min.js"></script> |
| <script src="../../../../../_/js/netbeans.js"></script> |
| <script> |
| $(function(){ $(document).foundation(); }); |
| </script> |
| <script src="../../../../../_/js/vendor/highlight.min.js"></script> |
| <script> |
| document.addEventListener('DOMContentLoaded', (event) => { |
| document.querySelectorAll('pre code').forEach((el) => { |
| hljs.highlightElement(el); |
| }); |
| }); |
| </script> |
| </body> |
| </html> |