Apache NetBeans - Le Bottin des Jeux Linux

Apache NetBeans

🗃️ Specifications

📰 Title: Apache NetBeans 🕹️ / 🛠️ Type: Tool
🗃️ Genre: Development 👁️ Visual: 2D
🏷️ Category: Development ➤ Editor & IDE 🏝️ Perspective: First person (interface)
🔖 Tags: Development; IDE; Editor; Java; Javascript; HTML5; PHP; CSS; Ruby; XML; C/C++; Python; Fortran; Plugins system; Templates; Wizards; Multi-platform ⏱️ Pacing: Real Time
🐣️ Approx. start: 1996-01-01 👫️ Played: Single & Multi
🐓️ Latest: 2024-11-04 🚦 Status: 05. Tested & Working (status)
📍️ Version: Latest: 💥️ 23 // 24-rc2 / 022ded6 ❤️ Like it: 6. 👶️ (no skills)
🏛️ License type: 🕊️ Libre 🎀️ Quality: 6. ☠️⭐ (system crash)
🏛️ License: Apache-2.0 ✨️ (temporary):
🐛️ Created: 2013-12-28 🐜️ Updated: 2024-11-05

📦️ Deliverables

📦️ Package name: netbeans ..... 📦️ Arch: ✓
📄️ Source: ✓ ..... 📦️ RPM: ✓
⚙️ Generic binary: ✓ ..... 📦️ Deb: ✓
🌍️ Browser version: ..... 📦️ AppImage:
📱️ PDA support: ..... 📦️ Flatpak: ✓
✨️ Not use: ..... 📦️ Snap: ✓

🚦 Entry status

📰 What's new?: 🚀️ Code improvement 👻️ Temporary:
💡 Lights on: ✓ 🎨️ Significant improvement:
👔️ Already shown: 💭️ New version published (to be updated):
🎖️ This work: 5 stars 🚧️ Some work remains to be done:
👫️ Contrib.: goupildb & Louis 🦺️ Work in progress:
🎰️ ID: 14098

📖️ Summary

📜️[en]: A libre, multi-platform IDE, framework and programming platform. It supports Java (its favorite language), JavaScript, PHP, HTML5, CSS, Ruby, XML, C/C++, Python, Fortran, and others via its plugin system. In particular, it provides an editor with syntax and semantic highlighting, a graphical interface and Web page editor, wizards (for starting a project) and templates. 📜️[fr]: Un IDE, un framework et une plateforme de programmation libre et multi-plateforme. Il supporte les langages Java (son langage de prédilection), JavaScript, PHP, HTML5, CSS, Ruby, XML, C/C++, Python, Fortran, et d'autres via son système de plugins. Il fournit notamment un éditeur avec coloration syntaxique et sémantique, un éditeur graphique d'interface et de pages Web, des assistants (pour démarrer un projet) et des modèles.

🎥️ Videos


🕵️ Reviews: 💥️ (202210),


🕯️ How To: 💥️Getting Started with Java (201909), 💥️How to create and run Java project (202207), 💥️IDE Tutorial (202105),

🕸️ Links

🏡️ Website & videos
[Homepage] [Dev site] [Features/About] [Screenshots] [Videos t(202xxx) ts(202xxx) gd(202xxx) gu(202xxx) id(202xxx) r(202210) lp(202xxx) ht(201909) ht(202207) ht(202105) ht(202401) ht(202109) ht(201709) ht[fr](202xxx) ht[de](202xxx) ht[ru](202xxx) ht[pl](202xxx) ht[cz](202xxx) ht[sp](201602) ht[pt](202xxx) ht[it](202xxx) ht[tr](202xxx)] [WIKI 1 2] [FAQ] [RSS] [Changelog 1 2 3]

💰 Commercial
• (empty)

🍩️ Resources
(empty, license): [Homepage] [Dev site] 🎬️ ht(202xxx)

🛠️ Technical informations
[PCGamingWiki] [MobyGames]

🦣️ Social
Devs (Oracle [fr] [en]): [Site 1 2] [Forums] [mastodon] [X 1 2] [Facebook] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
The Project: [Blog] [Chat] [Forums] [mastodon] [PeerTube] [YouTube] [PressKit] [Lemmy] [reddit] [Discord]

🐝️ Related
[Wikipedia (NetBeans) [fr] [en] [de]]
[Wiki ubuntu-fr [fr]]

📦️ Misc. repositories
[Repology] [pkgs.org] [Generic binary] [Arch Linux / AUR] [openSUSE] [Debian/Ubuntu] [Flatpak] [AppImage(author's repo)] [Snap] [PortableLinuxGames]

🕵️ Reviews
[HowLongToBeat] [metacritic] [OpenCritic] [iGDB]

🕊️ Source of this Entry: [Site (date)]

🦣️ Social Networking Update (on mastodon)

🛠️ Title: Apache NetBeans
🦊️ What's: A libre, multi-language programming IDE
🏡️ https://netbeans.apache.org/front/main
🐣️ https://github.com/apache/netbeans
🔖 #LinuxGameDev #Programming #IDE
📦️ #Libre #Bin #Arch #RPM #Deb #Flatpak #Snap
📖 Our entry: (homeless)

Dev ----------------------------------------
💥️ NEW!
🥁️ Update: 24-rc2
⚗️ Code improvement 🚀️
📌️ Changes: https://github.com/apache/netbeans/releases
🦣️ From: 🛜️ https://github.com/apache/netbeans/releases.atom

Stable -------------------------------------

🕵‍♂️️ (v21): 🐞️⭐⭐⭐ (bug on the bin vers)
🥁️ Update: 23
⚗️ Major release (Stable) 🍎️
📌️ Changes: https://github.com/apache/netbeans/releases
🦣️ From: 🛜️ https://github.com/apache/netbeans/releases.atom

🕵️ https://www.youtube.com/embed/0rIupfwEScM?start=245
🕯️https://www.youtube.com/embed/HcmcOMZQ0TM
🕯️https://www.youtube.com/embed/MvdXy9veTmw
🕯️https://www.youtube.com/embed/wdpxnKry0ic

🕶️ A view of its UI (v21, on my PC) with an example template in C++, and in another tab, an HTML template. On the left, access to various services (servers, Jenkins Builders, Docker, etc.), and at the top, the main menus.

📚️ Apache NetBeans is a libre, multi-platform IDE, framework and programming platform. It supports Java (its favorite language), JavaScript, PHP, HTML5, CSS, Ruby, XML, C/C++, Python, Fortran, and others via its plugin system. In particular, it provides an editor with syntax and semantic highlighting, a graphical interface and Web page editor, wizards (for starting a project) and templates.

📕 Description [en]

📜️ "A libre, multi-language programming IDE" 📜️

Apache NetBeans
Fits the Pieces Together
Development Environment, Tooling Platform and Application Framework.

✅️ Fast & Smart Editing
Apache NetBeans is much more than a text editor. It highlights source code syntactically and semantically, lets you easily refactor code, with a range of handy and powerful tools.

✅️ Java, JavaScript, PHP, HTML5, CSS, and More
Apache NetBeans provides editors, wizards, and templates to help you create applications in Java, PHP and many other languages.

✅️ Cross Platform
Apache NetBeans can be installed on all operating systems that support Java, i.e, Windows, Linux, Mac OSX and BSD. Write Once, Run Anywhere, applies to NetBeans too.


🌍️ Wikipedia :

NetBeans is an integrated development environment (IDE) for Java. NetBeans allows applications to be developed from a set of modular software components called modules. NetBeans runs on Windows, macOS, Linux and Solaris. In addition to Java development, it has extensions for other languages like PHP, C, C++, HTML5, and JavaScript. Applications based on NetBeans, including the NetBeans IDE, can be extended by third party developers.

History


NetBeans began in 1996 as Xelfi (word play on Delphi), a Java IDE student project under the guidance of the Faculty of Engineering and Technology at Charles University in Prague. In 1997, Roman Staněk formed a company around the project and produced commercial versions of the NetBeans IDE until it was bought by Sun Microsystems in 1999. Sun open-sourced the NetBeans IDE in June of the following year. Since then, the NetBeans community has continued to grow. In 2010, Sun (and thus NetBeans) was acquired by Oracle Corporation. Under Oracle, NetBeans had to find some synergy with JDeveloper, a freeware IDE that has historically been a product of the company, by 2012 both IDEs were rebuilt around a shared codebase - the NetBeans Platform. In September 2016, Oracle submitted a proposal to donate the NetBeans project to The Apache Software Foundation, stating that it was "opening up the NetBeans governance model to give NetBeans constituents a greater voice in the project's direction and future success through the upcoming release of Java 9 and NetBeans 9 and beyond". The move was endorsed by Java creator James Gosling. The project entered the Apache Incubator in October 2016.

NetBeans IDE

NetBeans IDE is an open-source integrated development environment. NetBeans IDE supports development of all Java application types (Java SE (including JavaFX), Java ME, web, EJB and mobile applications) out of the box. Among other features are an Ant-based project system, Maven support, refactorings, version control (supporting CVS, Subversion, Git, Mercurial and Clearcase).

Modularity: All the functions of the IDE are provided by modules. Each module provides a well-defined function, such as support for the Java language, editing, or support for the CVS versioning system, and SVN. NetBeans contains all the modules needed for Java development in a single download, allowing the user to start working immediately. Modules also allow NetBeans to be extended. New features, such as support for other programming languages, can be added by installing additional modules. For instance, Sun Studio, Sun Java Studio Enterprise, and Sun Java Studio Creator from Sun Microsystems are all based on the NetBeans IDE.

License: The IDE is licensed under the Apache License 2.0. Previously, from July 2006 through 2007, NetBeans IDE was licensed under Sun's Common Development and Distribution License (CDDL), a license based on the Mozilla Public License (MPL). In October 2007, Sun announced that NetBeans would henceforth be offered under a dual license of the CDDL and the GPL version 2 licenses, with the GPL linking exception for GNU Classpath. Oracle has donated NetBeans Platform and IDE to the Apache Foundation where it underwent incubation and graduated as a top level project in April 2019.

Other products

(...)

📕 Description [fr]

Un IDE libre multi-langages de programmation, par Oracle, initié par Roman Staněk.
En Java.

Apache NetBeans est un IDE, un framework et une plateforme de programmation libre et multi-plateforme. Il supporte les langages Java (son langage de prédilection), JavaScript, PHP, HTML5, CSS, Ruby, XML, C/C++, Python, Fortran, et d'autres via son système de plugins. Il fournit notamment un éditeur avec coloration syntaxique et sémantique, un éditeur graphique d'interface et de pages Web, des assistants (pour démarrer un projet) et des modèles.


Apache NetBeans
Assemble les pièces entre elles
Environnement de développement, plate-forme d'outils et environnement d'application.

✅️ Édition rapide et intelligente
Apache NetBeans est bien plus qu'un éditeur de texte. Il met en évidence le code source d'un point de vue syntaxique et sémantique, vous permet de remanier facilement le code, grâce à une gamme d'outils pratiques et puissants.

✅️ Java, JavaScript, PHP, HTML5, CSS et plus encore
Apache NetBeans fournit des éditeurs, des assistants et des modèles pour vous aider à créer des applications en Java, PHP et bien d'autres langages.

✅️ Multiplateforme
Apache NetBeans peut être installé sur tous les systèmes d'exploitation qui prennent en charge Java, c'est-à-dire Windows, Linux, Mac OSX et BSD. La devise "Write Once, Run Anywhere" (écrire une fois, exécuter partout) s'applique également à NetBeans.



🌍️ Wikipedia :

NetBeans est un environnement de développement intégré (EDI), placé en open source par Sun en juin 2000 sous licence CDDL et GPLv2 (Common Development and Distribution License). En plus de Java, NetBeans permet également de supporter différents autres langages, comme Python, C, C++, JavaScript, XML, Ruby, PHP et HTML. Il comprend toutes les caractéristiques d'un IDE moderne (éditeur avec coloration syntaxique, projets multi-langage, refactoring, éditeur graphique d'interfaces et de pages Web).

Compilé en Java, NetBeans est disponible sous Windows, Linux, Solaris (sur x86 et SPARC), Mac OS X ou sous une version indépendante des systèmes d'exploitation (requérant une machine virtuelle Java). Un environnement Java Development Kit JDK est requis pour les développements en Java.

NetBeans constitue par ailleurs une plateforme qui permet le développement d'applications spécifiques (bibliothèque Swing (Java)). L'IDE NetBeans s'appuie sur cette plate forme.

L'IDE Netbeans s'enrichit à l'aide de greffons.

Historique

En 1997, NetBeans naît de Xelfi, un projet d'étudiants dirigé par la Faculté de mathématiques et de physique de l'Université Charles de Prague. Plus tard, une société se forme autour du projet et édite des versions commerciales de l'EDI NetBeans, jusqu'à ce qu'il soit acheté par Sun en 1999. Sun place le projet sous double licence CDDL et GPL v2 en juin de l'année suivante.

En septembre 2016, Oracle, qui a racheté Sun, propose de céder le projet à la fondation Apache Software Foundation, ce qui est accepté en octobre 20163.

Multilingue

NetBeans est disponible en 23 langues (version 7.0 sortie en avril 2011), dont la plupart de ces traductions a été réalisée par la communauté des utilisateurs.

Environnement

Netbeans est un IDE qui supporte une large variété de langages de programmation et d'outils de collaboration.

Environnement de base

L'environnement de base comprend les fonctions générales suivantes :

• configuration et gestion de l'interface graphique des utilisateurs,
• support de différents langages de programmation,
• traitement du code source (édition, navigation, formatage, inspection ..),
• fonctions d'import/export depuis et vers d'autres IDE, tels qu'Eclipse ou JBuilder,
• accès et gestion de bases de données, serveurs Web, ressources partagées,
• gestion de tâches (à faire, suivi …),
• documentation intégrée.

Principaux langages supportés

L'éditeur intégré propose des fonctions de complétion, de contrôles syntaxiques et sémantiques, d'avertissements et de conseils, de reprise de codes (« refactoring » : renommage, changement des méthodes, gestion des classes, …), de sauvegarde et reprise.

Il supporte les principaux langages suivants :

• Java (Java SE, Java ME, Java FX, Java EE), Javadoc ;
• Ruby et Ruby on Rails : Ruby 1.9, Ruby on Rails 3, JRuby 1.4 ;
• Groovy et Grails ;
• PHP (dont les environnements Zend et Symfony) ;
• JavaScript ;
• C, C++, Fortran. Netbeans ne requiert pas l'utilisation d'un compilateur particulier. À noter le support des bibliothèques Qt. Les plates formes supportées sont Microsoft Windows, Linux, Mac OS, Solaris 10 et OpenSolaris ;
• Python ;
• HTML, XHTML, RHTML ;
• XML ;
• DTD ;
• CSS ;
• JSP, JSF ;
• ERB ;
• Ruby (via un greffon depuis la version 7.0 de netBeans) ;
• …

Gestion de projets

Netbeans supporte les principaux systèmes de gestion de versions : CVS, Subversion, Mercurial, ClearCase, CVS. Il intègre par ailleurs des outils collaboratifs (Projet Kenai Team Server).
Il interagit avec les logiciels de gestion de bugs : Jira, Bugzilla.

Débogage et optimisation

Netbeans comprend un profileur de code Java (analyse des performances CPU, de la génération de charge, analyse de l'utilisation mémoire, …).
Il intègre par ailleurs des outils de débogage Java. Il peut aussi interagir avec des débogueurs PHP (Zend, Xdebug).

Bases de données

NetBeans comprend un explorateur de bases de données qui supporte toutes les bases de données relationnelles pour lesquelles un connecteur JDBC existe (selon les versions des gestionnaires de bases de données): JavaDB (Derby) MySQL, PostgreSQL, Oracle, Microsoft SQL Server, PointBase (en), JTD engine (en), IBM Redistributable DB2, …

L'explorateur comprend un éditeur de requêtes, un gestionnaire intégré de bases de données MySQL.

Outils de construction d'applications

Applications sur serveurs (applications Web et JAVA EE)

NetBeans supporte une importante variété d'environnements pour l'exécution d'applications web et Java EE : Java Server Pages (JSP), Java Server Faces(JSF), Enterprise JavaBeans (EJB 2.1, EJB 3, EJB 3.1), Apache Struts, Spring Web MVC, Hibernate… Il supporte les standards Java EE 6, Java EE 5, J2EE 1.4, Java Persistence API (JPA 2.0 ), Java Servlet API.

Il permet le déploiement d'applications Java et d'Applets via Java Web Start (JNLP).

Netbeans intègre les fonctions de Hudson (Maven et projets Java SE pour Ant) et de Maven (créer, exécuter, tester et déboguer des projets Maven Apache).

Applications sur poste de travail

Il supporte le développement d'applications postes de travail (Java SE), en lien avec JDK 1.1, 1.2, 1.3, 1.4, JDK 5.0 et JDK 6. Il permet l'utilisation des tests JUnit 3 et 4.

NetBeans propose un environnement graphique exploitant Swing, désigné comme Java Swing GUI Builder (ancien projet Matisse). Cet environnement comporte des palettes d'outils de composition d'interfaces (composantes Swing et AWT et composantes spécifiques développées pour les projets). Il est utilisé au travers d'une interface graphique simple (choisir et positionner) qui permet de dessiner des interfaces pour les utilisateurs et de les visualiser à la volée. Le construction d'interface graphique est conforme à JSR 296 (Swing Application Framework), et JSR 295 (technologie Beans Binding ).

NetBeans supporte par ailleurs Java FX.

Applications Java sur mobiles ou embarquées

Netbeans permet le développement d'applications Java pour mobiles (Java ME) et systèmes embarqués.

Web Services

NetBeans propose différents outils pour l'exploitation de web services. Il supporte JAX-WS services, JAX-RS RESTful Web Services, standards JAX-RPC Web Service, SOAP et RESTful Web Services, JBI Java Business Integration, Java Architecture for XML Binding API (JAXB), Mobile Java ME Web services. Il permet l'utilisation des web services Google Maps, StrikeIron, Yahoo News Search. Il supporte par ailleurs l'intégration de services fournis par quelques acteurs clés (Google, Facebook, Yahoo, YouTube, …).

Plate forme NetBeans

Type de plateforme

NetBeans est aussi une plateforme générique pour le développement d'applications pour stations de travail (bibliothèque Swing (Java)). Elle fournit des ressources pour développer les éléments structurants de ces applications : gestion des menus, des fenêtres, configuration, gestion des fichiers, gestion des mises à jour… Des présentations détaillées sont fournies par le centre de documentation de NetBeans.

L'IDE NetBeans comprend toutes les ressources utiles mais il est aussi possible d'installer la plateforme séparément.

Le développement d'applications sur la base de la plate-forme NetBeans consiste en la réalisation de « modules » qui s'insèrent dans la plate-forme et en étendent dynamiquement les fonctions.

Un module est un groupe de classes Java, de portée variée : elle peut consister en une simple classe Java réalisant des fonctions simples (exemple : ajouter une action dans un menu pour éditer le contenu du presse papier) comme elle peut intégrer une application externe complète (exemple : Java profiling suite). Un module peut s'appliquer à l'IDE NetBeans lui-même.

La réalisation des modules s'appuie sur une API normalisée.

Un espace de partage entre développeurs est mis en place.

OSGi

La plate forme NetBeans se conforme au framework d'OSGiNetBeans IDE 6.9 permet de créer des paquetages OSGi pour des applications Java et pour des applications développées depuis NetBeans.

Plugins

NetBeans s'enrichit au travers d'un système de greffons.

🚧️ Installation ➜ 🚀️ Launching [fr]

⚙️ Installation à partir du binaire

📦️ Installation à partir du/des paquet(s) Manjaro/Arch :
• Il(s) est/sont dans les dépôts Manjaro/Arch, il suffit d'installer le(s) paquet(s).

⛓️ Installation à partir du binaire classique :
• Un binaire statique est disponible, décompressez le livrable, et rendez son binaire exécutable (clic droit sous votre gestionnaire de fichier).


📄️ Installation à partir du source

• Source non testé.


🚀️ LANCEMENT DE L'INTERFACE

▸ Classique :
• Si vous l'avez installé à partir d'un paquet / dans l'un des répertoires système : [Alt+F2] netbeans ou $ netbeans
• Sinon, rendez son binaire exécutable (clic droit sous votre gestionnaire de fichier) et cliquez dessus, ou dans son répertoire racine lancez : $ ./bin/netbeans

💡 Nota :
• si vous installez le paquet netbeans-bin, la commande à lancer devient (il ne peut pas l'installer au même endroit) : $ /opt/netbeans-21/bin/netbeans
• si un plugin fait planter netbeans, effacez ~/.cache/netbeans/ et ~/.netbeans/ et relancez.

🕵️ Test [fr]

📜️ Préambule :
⚬ 1ere édition : le 8 mai 2024 sous Manjaro. Par : goupildb. ⏱️ Durée du test : 5 minutes. 🎯️ Objectif : Initialisation de l'entrée, tests et prise d'une copie d'écran


🫕️ Installation :
▸ (✘ v. 21) Binaire classique : NE FONCTIONNE PAS.
🐞️ Serious bug:
🔴️ Il démarre mais fini par planter (voir ci-après). Je lance un projet en HTML (nota : j'avais choisi le répertoire d'installation du binaire de netbeans pour l'emplacement de mon projet - ce qui n'est peut-être pas une bonne idée), et je vois en haut de l'interface un petit graphique avec un emplacement mémoire qui continue à augmenter alors que le template HTML est tout petit. Je vois le message "Click to force garbage collection" (le piège à c.., je tombe dedans, c'est trop tentant :)), et là gros plantage non seulement de l'application mais aussi de mon gestionnaire de fenêtre Cinnamon. Je redémarre Cinnamon dans la foulée, et là c'est Linux qui est planté.
🔴️ Je ne fait pas le lien immédiatement, je redémarre, et tente de lancer un projet en C++, décidément ce petit graphique qui me dit qu'il y a de la fuite mémoire continuelle est terriblement tentant, je re-clique dessus, et nouveau gros plantage de Cinnamon. Je redémarre Linux dans la foulée, essaie de relancer NetBeans, et nouveau plantage de l'ensemble avant même d'arriver à l'interface. J'arrête mon test.

▸ (✘ v. 16-1 netbeans) Paquet Arch/AUR : NE FONCTIONNE PAS. 🔴️ Il plante sur : “(...) Cannot read cluster file: //etc/netbeans.clusters (...)”
▸ (✔ v. 21-1 netbeans-bin) Paquet Arch/AUR : FONCTIONNEL. 🔴️ Il plante dès que je tente d'ouvrir un nouveau projet. 🟢️ Il est probable que ma précédente installation ait installé quelque-chose qu'il ne supporte pas. Je fais une recherche sur netbeans dans mon Home et efface ~/.cache/netbeans/ et ~/.netbeans/ et relance : ça fonctionne. 🟢️ Je créé à nouveau un projet HTML à partir d'un template : il fonctionne. C'est terriblement tentant de re-cliquer sur "Click to force garbage collection" : je résiste :)).


🧪️ Tests effectués :

‣ 🧫️ Conditions du test :
⚪️ L'idée était de faire une copie d'écran en condition.
⚪️ Je n'ai pas les compétences pour un test sérieux de cet outil.

‣ 🎲️ Résultat des tests :
🟢️ Il démarre.
🟢️ Une belle interface d'accueil.
🟢️ Je lance un projet de test en HTML : semble bien fonctionner (je vois du code HTML).
🔴️ Voir les problèmes de plantage plus haut.
🟢️ Visiblement la version 21 du dépôt AUR fonctionne bien, puisque je parviens à créer un projet HTML à partir d'un template, idem pour le C++ (voir la copie d'écran).
🔴️ Je tente à nouveau le test du binaire du site : j'efface le répertoire d'installation précédent (où j'avais créé un projet), le réinstalle proprement, et relance l'interface : même plantage. Je lance netbeans du dépôt AUR : il fonctionne bien (donc le plantage est spécifique au binaire du site).
🟢️ Sur la version des dépôts AUR je clique sur "Click to force garbage collection" et pas de plantage !


🛬️ Fiabilité :
🔴️ Problème de fiabilité du binaire Linux du site.
🟢️ La version des dépôts AUR fonctionne bien.
🟠️ L'application semble avoir des fuites de mémoire.


🧭️ Conclusion :

🕵️ Impression globale : 👍️👎️ (mitigée)
❤️ Like it: 👶️ (no skills)
🎀️ Quality: ☠️⭐ (system crash)

🔴️ Attention : problème de fiabilité du livrable pouvant faire planter non seulement le gestionnaire de fenêtre, mais aussi Linux.
🟢️ La version des dépôts AUR fonctionne bien.
🟢️ L'interface me semble d'excellente qualité.
🟠️ Étrange ces fuites de mémoire (Tellico en a aussi - et bien plus importantes après quelques heures).