Package Description
Go to the download folder, you would find a file named “eclipse-java-mars-2-macosx-cocoa-x8664.tar” (the file name may be different based on the version you download but it should be a tar file starting with word eclipse). Operating System: Windows 7 or later, Mac OS 10.9 or later, or modern Linux. 64-bit support only for MyEclipse 2018 or later. Minimum: 5GB of free disk space with 1 GB of free RAM Recommended: 10 GB of free disk space with 2 GB of free RAM.
Tools for Java developers creating Java EE and Web applications, including a Java IDE, tools for Java EE, JPA, JSF, Mylyn and others.
This package includes:
- org.eclipse.cvs
- org.eclipse.help
- org.eclipse.jdt
- org.eclipse.platform
- org.eclipse.pde
- org.eclipse.mylyn.ide_feature
- org.eclipse.mylyn.java_feature
- org.eclipse.mylyn.bugzilla_feature
- org.eclipse.mylyn.context_feature
- org.eclipse.mylyn_feature
- org.eclipse.mylyn.wikitext_feature
- org.eclipse.rse
- org.eclipse.rse.useractions
- org.eclipse.tm.terminal
- org.eclipse.tm.terminal.ssh
- org.eclipse.tm.terminal.telnet
- org.eclipse.tm.terminal.view
- org.eclipse.datatools.modelbase.feature
- org.eclipse.datatools.connectivity.feature
- org.eclipse.datatools.sqldevtools.feature
- org.eclipse.datatools.intro
- org.eclipse.datatools.doc.user
- org.eclipse.datatools.common.doc.user
- org.eclipse.datatools.connectivity.doc.user
- org.eclipse.datatools.sqltools.doc.user
- org.eclipse.datatools.enablement.feature
- org.eclipse.wst.common.fproj
- org.eclipse.wst.jsdt.feature
- org.eclipse.wst.xml_ui.feature
- org.eclipse.wst.web_ui.feature
- org.eclipse.wst.server_adapters.feature
- org.eclipse.wst.xsl.feature
- org.eclipse.jst.common.fproj.enablement.jdt
- org.eclipse.jst.server_ui.feature
- org.eclipse.jst.server_adapters.feature
- org.eclipse.jst.server_adapters.ext.feature
- org.eclipse.jst.web_ui.feature
- org.eclipse.jst.enterprise_ui.feature
- org.eclipse.jst.webpageeditor.feature
- org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature
- org.eclipse.jst.ws.axis2tools.feature
- org.eclipse.jst.ws.axis2tools.feature
- org.eclipse.jpt.common.feature
- org.eclipse.jpt.common.eclipselink.feature
- org.eclipse.jpt.dbws.eclipselink.feature
- org.eclipse.jpt.jaxb.eclipselink.feature
- org.eclipse.jpt.jaxb.feature
- org.eclipse.jpt.jpa.eclipselink.feature
- org.eclipse.jpt.jpa.feature
- org.eclipse.jsf.feature
- org.eclipse.jst.webpageeditor.feature
- org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature
- org.eclipse.jst.ws.jaxws.feature
- org.eclipse.jst.ws.cxf.feature
- org.eclipse.jst.ws.jaxws.dom.feature
- org.eclipse.epp.package.common.feature
Maintained by: WTP and the Eclipse Packaging Project
macOS 32-bit | x86_64
Linux 32-bit | x86_64
Windows 64-bit: MD5 - SHA1
Mac OS X (Cocoa) 32-bit: MD5 - SHA1
Mac OS X (Cocoa) 64-bit: MD5 - SHA1
Linux 32-bit: MD5 - SHA1
Linux 64-bit: MD5 - SHA1
Bugzilla
Bug ID | Title | Status |
509189 | Setup errors | NEW |
507509 | Adding new CFT feature to JEE package for Neon.2 and Oxygen | NEW |
512008 | Add Spring tooling | NEW |
512880 | Include SpotBugs in Java and Java EE package | NEW |
513864 | Something wrong with Eclipse Neon.2 (4.6.2) when it uses in fedora ( dell xps 15 HD 3840x2160 ) | NEW |
513604 | Exported app client project is dependent on appclient.bat | NEW |
503463 | Reopen Update does not work | NEW |
496632 | AssertionFailedException in AbstractTextEditor$TextEditorSavable | NEW |
485788 | Include Eclipse Tools for Cloud Foundry (CFT) as part of the JEE Package | NEW |
483561 | Inspect window close when try to resize | NEW |
488993 | Include Memory Analyzer Tools in Java EE package | NEW |
492707 | Upgrading to Mars 4.5.2 fails because of missing items | NEW |
494586 | Update New JEE Welcome Quicklinks to create JavaEE Web project and JSDT Project | NEW |
515330 | Problems occurred when invoking code from plug-in: 'org.eclipse.jface'. | NEW |
518580 | JavaEE package not listed on main Oxygen dev builds download page | NEW |
544627 | ITS team has blocked eclipse several operations due to absence of digital signature | NEW |
542925 | Eclipse IDE for Enterprise Java Developers 2018-12 R final release disables content assist by default. | NEW |
550519 | Eclipse IDE for Java EE Developers NEON 4.6 - Maven project | NEW |
551096 | Unable to add the jar files are the options are being disabled | NEW |
551408 | Include Wild Web Developer into Eclipse IDE for Enterprise Java Developers | NEW |
538811 | Problem Opening Wizard for an installed plugin | NEW |
536107 | Cant Delete projects | NEW |
522712 | Eclipse for JEE does not include PDE extension point schemas | NEW |
520315 | Toolbar contatining run,debug and breakpoints missing if customize perspective is used than eclipse oxygen crashes in ubuntu 64bit | NEW |
533338 | Not able to load the JAVA EE perspective and not able to see Server option in Neon 4.6.2 | NEW |
533975 | [Accessibility] issues in Windows 'high contrast' mode. | NEW |
535551 | EPP Photon RC2 has duplicate vmargs in eclipse.ini | NEW |
481601 | Packages MUST set lower version of feature | NEW |
472108 | Problew when try to open Eclipse | NEW |
380080 | Cannot upgrade to Eclipse IDE for Java EE Developers 1.5.0.20120504-1855 | NEW |
368367 | Eclipse.exe ICON mismatch | NEW |
384419 | [KeyBindings] Can't unbind the ESC key from closing a detached editor | NEW |
388311 | JUNO j2ee ide is not starting. throws an error saying to | |
414369 | out of heap while building the workspace for most akka projects - fixed with increased heap | NEW |
389859 | duplicate Information in the Progress tab appears twice | NEW |
363588 | New 'global debug toolbar' added to jee perspective by default | NEW |
362048 | eclipse java ee ide update problem | NEW |
306492 | The console and the editor cannot display the character exactly | NEW |
265948 | It is not possible to uninstall any component from eclipse bundle (e.g. j2ee) | NEW |
309935 | When started Eclipse displays a message: the Eclipse executable launcher was unable to locate its companion shared library | NEW |
320614 | Update of Java EE IDE fails due to missing dependency on Mylyn | NEW |
361062 | Periodic workspace save | NEW |
239377 | Could improve 'how to get source' instructions | NEW |
414663 | IDE fails to load [Mac] after update | NEW |
470430 | Oomph preference recorder causing unexpected results | NEW |
466103 | M6 downloads available today are invalid packages for OSX. I have tried from different mirrors. | NEW |
460941 | dark theme breaks on JEE views and features | NEW |
462517 | An error has occurred. See error log for more details. | NEW |
459313 | Eclipse crashes | NEW |
459163 | Update problem - no repository - for Target Management Home | NEW |
429321 | Include Mylyn Builds component in packages | NEW |
429371 | j2ee maven | NEW |
441843 | By default enable 'Refresh using native hooks' and 'Refresh on access' | NEW |
464007 | Improve Welcome/About description | NEW |
367258 | Duplicate parameters in eclipse.ini file | ASSIGNED |
498145 | Bundle-Vendor/Bundle-Name not properly externalized | ASSIGNED |
471683 | EGit Error on every Save operation - An internal error occurred during: 'Computing Git status for repository ..' | REOPENED |
428098 | 'Invalid' message when trying to unzip | REOPENED |
Bugs listed in italics indicate the bug has been moved to another project.
Bug ID | Title | Status |
226613 | 20080410-1900 broken | VERIFIED |
276608 | tm.terminal should not include source, to save space | VERIFIED |
316420 | use package icon on web page | RESOLVED |
323045 | The MD5 given for this download does not match | RESOLVED |
315701 | webtools/updates site needs to be changed | RESOLVED |
314969 | add jsf feature to Java EE IDE package | RESOLVED |
312527 | eclipse-jee-helios-M7-win32 doesn't include the JAX-WS tool | RESOLVED |
328948 | EclipseGalileo Hanging frequently. | RESOLVED |
330867 | EE package includes PDE indirectly, but should be direct | RESOLVED |
349073 | 'Too many open files' during signing check, while installing more stuff | RESOLVED |
350150 | Include m2e as part of this package | RESOLVED |
344903 | Welcome screen has some out-of-place (out dated?) items | RESOLVED |
343270 | Update JEE package with new Dali Common features | RESOLVED |
333300 | only 'Generic' displayed in the extension point | RESOLVED |
312353 | restore capability bundles | RESOLVED |
311610 | [Java EE package] Community and JPA links in welcome page goes to a 'Not Found' page | RESOLVED |
280566 | add capabilities (and preferences) | RESOLVED |
280653 | Welcome Page: Standard links are not working (Samples, Tutorials, ..) | RESOLVED |
279201 | update site list is not correct in package | RESOLVED |
278469 | Runtime-only features should not be installed in an IDE | RESOLVED |
278274 | improved about box graphic | RESOLVED |
280654 | Welcome Page: Standard links are not working (Samples, Tutorials, ..) | RESOLVED |
280655 | Welcome Page: Standard links are not working (Samples, Tutorials, ..) | RESOLVED |
353703 | Cannot update Eclipse Platform in JEE package | RESOLVED |
304451 | javax.transaction is configured as framework extension | RESOLVED |
300913 | remove references to uncertain capabilities bundles | RESOLVED |
280710 | progress message steps on image text | RESOLVED |
278204 | splash progress text should be white | RESOLVED |
387136 | Include egit as part of Java EE Package | RESOLVED |
514206 | Include EclEmma in JavaEE package | RESOLVED |
520600 | Exit 13 | RESOLVED |
512009 | Add angularJS tools | RESOLVED |
503321 | Update does not work | RESOLVED |
500188 | Virtual Machine Issue | RESOLVED |
528430 | m2e to download sources by default | RESOLVED |
533441 | Hibernate tools crash to read metadata from SQL server 2014 with sqljdbc4.jar and authx64sqljdbc_auth.dll | RESOLVED |
543563 | Can't install plugging JautoDoc | RESOLVED |
547647 | Check for updates | RESOLVED |
539339 | Rename 'Eclipse IDE for Java EE developers' to 'Eclipse IDE for Enterprise Java developers'? | RESOLVED |
537514 | Regression: Java 10 support missing from WTP Photon 4.8.0 | RESOLVED |
534618 | [Tips] [Photon] [jee] Include Tip of the Day | RESOLVED |
496365 | Not able to download set up eclipse jee juno SR1 | RESOLVED |
493596 | [Welcome] Adopt Solstice theme for JEE package | RESOLVED |
413545 | Kepler Java EE package missing key m2e bundles | RESOLVED |
414370 | scala | RESOLVED |
407108 | ECLIPSE_.RSA in org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar does not match the one from Eclipse Juno SR1 (4.2.1) | RESOLVED |
398422 | JEE Package displays git configuration dialog on startup | RESOLVED |
278158 | need build to handle about.mappings? | RESOLVED |
429370 | Updating EPP Java EE Windows package from Kepler SR1 to SR2 fails | RESOLVED |
461652 | Eclipse would not launch, returned exit code=13 | RESOLVED |
487397 | Chrome V8 debugger is crashing on console output | RESOLVED |
492028 | Add optional chromium Debugger feature to JEE EPP for Neon | RESOLVED |
478181 | Include Buildship as part of JavaEE Package | RESOLVED |
477914 | Mars can't connect to Websphere v 8.5.x | RESOLVED |
469665 | erro oracle pack | RESOLVED |
363589 | still seeing some pollution of update sites in Java EE M3 | RESOLVED |
281039 | the What's new link on the Welcome page does not work | RESOLVED |
248051 | Perspective Tab | RESOLVED |
248494 | IDE for Java EE Developers won't start on 64-bit Vista | RESOLVED |
247389 | Why are not all JEE Project upate sites enabled? | RESOLVED |
242191 | Ganymede JEE Package dist for MacOSX has old 'Software Updates' component | RESOLVED |
239275 | packages should enable all their primary update sites (by default) | RESOLVED |
241596 | Equinox p2 installer failed to install eclipse-java-ganymede-win32.zip | RESOLVED |
249885 | Package fails after update because there is no metadata for the launcher.library | RESOLVED |
278157 | Need build to pickup 'welcome' bundle | RESOLVED |
260616 | PROBLEM with Eclipse Ganymede UPDATE | RESOLVED |
264465 | org.eclipse.pde.p2 feature should be in eclipse-jee-ganymede | RESOLVED |
259813 | Default Eclipse distro cannot upgrade | RESOLVED |
259686 | Automatic updates fail. | RESOLVED |
258581 | X86_64 release can not be unzip & untar with X86_64 linux | RESOLVED |
238280 | Missing DTP features in initial JEE 3.4 release | RESOLVED |
237652 | Crashes on startup | RESOLVED |
231974 | Ganymede M7 first startup takes several minuts and bundled plugins are not detected | RESOLVED |
232269 | Pre-installed packages are not installed. And cannot be either | RESOLVED |
231078 | JEE package update to Ganymede M7 | RESOLVED |
227870 | icu4j jar packaged in the JavaEE install is different from the M6/M6a | RESOLVED |
227351 | Need to filter out TPTP features from Mac. distributions. | RESOLVED |
227711 | missing program icon | RESOLVED |
233009 | JEE package configuration updates | RESOLVED |
234533 | added forgotten feature, EclipseLink Support to JEE | RESOLVED |
237424 | datatools doc error in JEE package | RESOLVED |
237425 | Warning logged about undefined tm.terminal command | RESOLVED |
237423 | 64 bit package opens to Java Perspective | RESOLVED |
235338 | Weird Small Window | RESOLVED |
235089 | Package is missing 'capabilities' | RESOLVED |
265912 | md5 files are 'hard to read' | RESOLVED |
250523 | Ganymede hangs when clicking View Error Log | RESOLVED |
278141 | No build ID in about dialog of JEE 3.5rc1 package | RESOLVED |
276417 | externailize strings for jee bundle | RESOLVED |
278142 | No Capabilities Preference Page in JEE 3.5rc1 | RESOLVED |
275817 | Eclipse says 'Java EE IDE Package' as application name | RESOLVED |
276415 | Another rev of feature | RESOLVED |
269915 | New&Noteworthy for DSDP-TM missing on JEE EPP Ganymede SR2 page | RESOLVED |
277394 | remove pde from jee package or default 'on' capabilties. | RESOLVED |
277775 | Some start to product customization | RESOLVED |
277863 | Missing Eclipse Icon under Linux | RESOLVED |
275596 | default workspace is wrong directory | RESOLVED |
275389 | A few language improvements for M7 | RESOLVED |
272947 | Addition of EclipseLink Galileo bundles to the Java EE package | RESOLVED |
271748 | There is no xsd and xsd.edit feature in the jee Galileo M6 package | RESOLVED |
276606 | DTP features should not include source, to save size | RESOLVED |
278152 | should not jar up product plugin | RESOLVED |
274638 | Problem while installing Eclipse Updates | RESOLVED |
276609 | jst and wst features should be expanded | RESOLVED |
275375 | Unusual exception logged on startup | RESOLVED |
278145 | Jee 3.5rc1 has no window icon | RESOLVED |
306624 | Error logged on Help > Install due to file:// repositories leaked into package | CLOSED |
191557 | Eclipse Tools for Java Enterprise Development contains too much | CLOSED |
277364 | 'eclipse' symlink present in eclipse-SDK download is missing from package | CLOSED |
279254 | Welcome page links don't work without Internet Connectivity | CLOSED |
540983 | why no Eclipse IDE for Java EE Developers releases in milestone builds? | CLOSED |
278154 | eclipse.ini has wrong splash screen | CLOSED |
538661 | Upgrade to Eclipse 2018-09 M3 breaks SQL editor. | CLOSED |
238541 | Download page doesn't detect 64 bit linux, and offers 32bit download | CLOSED |
525617 | Eclipse Build download is failing - servers are down | CLOSED |
278140 | Help contents not available in JEE 3.5rc1 package | CLOSED |
518583 | There was an eclipse platform Oxygen RC4a build, but the latest EPP is RC3. | CLOSED |
468874 | Unsigned Content warning due to javax.persistence when installing JEE package with eclipse-installer | CLOSED |
417632 | Rename JEE packed into 'Web Development ' ? | CLOSED |
419334 | Kick PDE out of JEE package | CLOSED |
422747 | add code recommenders to jee package | CLOSED |
317003 | Ganymede-jee-64Bit-Linux-Download broken | CLOSED |
385028 | Java EE package should say it requires a 1.6 JRE | CLOSED |
338601 | Update JEE package with new Dali feature names | CLOSED |
358808 | EULA for the package does not match the other ones | CLOSED |
374545 | javax.transaction plugin is not being loaded. | CLOSED |
424291 | Cannot install remote marketplace locations | CLOSED |
247698 | RSE Terminal uses ugly fonts in JEE package | CLOSED |
462087 | The JEE package refer to outdated TM Terminal features | CLOSED |
477947 | Unable to install SOAP UI Plugin | CLOSED |
312197 | WebPage Editor don´t recognize EL 2.2 method call with parameter | CLOSED |
313517 | Add MPC to the JEE package | CLOSED |
459007 | Eclispe is damn slow. | CLOSED |
435447 | NPE in ReadManager | CLOSED |
436627 | Fatal Error starting Eclipse | CLOSED |
436896 | Unusual URISyntaxException exception in log first time help is indexed | CLOSED |
486131 | can't extract eclipse | CLOSED |
Bugs listed in italics indicate the bug has been moved to another project.
File a Bug on this Package
New and Noteworthy
Eclipse Webtools ProjectEclipse Platform
Eclipse Mylyn
Eclipse Target Management (RSE)
Testing Details
Package Testers
David WilliamsMarkus Knauer
Mik Kersten
Martin Oberhuber
Eclipse (@ www.eclipse.org) is an open-source Integrated Development Environment (IDE) supported by IBM. Eclipse is popular for Java application development (Java SE and Java EE) and Android apps. It also supports C/C++, PHP, Python, Perl, and other web project developments via extensible plug-ins. Eclipse is cross-platform and runs under Windows, Linux and macOS.
Eclipse Versions
The various versions are:
- Eclipse 1.0 (November 7, 2001): based on an earlier Java IDE called VisualAge from IBM.
- Eclipse 2.0 (June 28, 2002)
- Eclipse 2.1 (March 28, 2003)
- Eclipse 3.0 (June 25, 2004)
- Eclipse 3.1 (June 28, 2005)
- Eclipse 3.2 (June 30, 2006) (Callisto - named after one of the Jupiter's Galilean moons): started annual simultaneous release of all the related Eclipse projects.
- Eclipse 3.3 (June 25, 2007) (Europa - named after another Jupiter's Galilean moons)
- Eclipse 3.4 (June 19, 2008) (Ganymede - named after yet another Jupiter's Galilean moons)
- Eclipse 3.5 (June 12, 2009) (Galileo - named after the great 17th century scientist and astronomer Galileo Galilei)
- Eclipse 3.6 (June 23, 2010) (Helios - named after god of the sun in Greek Mythology)
- Eclipse 3.7 (June 23, 2011) (Indigo)
- Eclipse 4.2 (June 27, 2012) (Juno)
- Eclipse 4.3 (June 2013) (Kepler)
- Eclipse 4.4 (June 2014) (Luna)
- Eclipse 4.5 (June 2015) (Mars)
- Eclipse 4.6 (June 2016) (Neon)
- Eclipse 4.7 (June 2017) (Oxygen)
- Eclipse 4.8 (June 2018) (Photon)
- Eclipse 2018-09 (4.9) (starting quarterly release), Eclipse 2018-12 (4.10)
- Eclipse 2019-03 (4.11), Eclipse 2019-06 (4.12), Eclipse 2019-09 (4.13), Eclipse 2019-12 (4.14)
- Eclipse 2020-03 (4.15), Eclipse 2020-06 (4.16), Eclipse 2020-09 (4.17), Eclipse 2020-12 (4.18)
How to Install Eclipse IDE 2020-12 for Java Developers
How to Install Eclipse on Windows
Step 0: Install JDK
To use Eclipse for Java programming, you need to first install Java Development Kit (JDK). Read 'How to Install JDK for Windows'.
Step 1: Download
Download Eclipse from https://www.eclipse.org/downloads. Under 'Get Eclipse IDE 2029-12' ⇒ Click the link 'Download Packages' (instead of pushing the button 'Download x86_64'). For beginners, choose the 'Eclipse IDE for Java Developers' and 'Windows x86_64' (e.g., 'eclipse-java-2020-12-R-win32-x86_64.zip
' - about 201MB) ⇒ Download.
Step 2: Unzip
To install Eclipse, simply unzip the downloaded file into a directory of your choice (e.g., 'c:myProject
').
I prefer the zip version, because there is no need to run any installer. Moreover, you can simply delete the entire Eclipse directory when it is no longer needed (without running any un-installer). You are free to move or rename the directory. You can install (unzip) multiple copies of Eclipse in the same machine.
How to Install Eclipse on macOS
To use Eclipse for Java programming, you need to first install JDK. Read 'How to install JDK for macOS'.
To install Eclipse: Tp link tl wn951n driver windows 10.
- Goto http://www.eclipse.org/downloads/. Under 'Get Eclipse IDE 2020-12' ⇒ Click the link 'Download Packages' (instead of pushing the button 'Download x86_64'). For beginners, select 'Eclipse IDE for Java Developers' and 'macOS x86_64'. You will receive a DMG file (e.g., '
eclipse-java-2020-12-R-macosx-cocoa-x86_64.dmg
'). - Double-click the downloaded Disk Image (DMG) file. Follow the screen instructions to install Eclipse. Eclipse will be installed under '
/Applications/eclipse
'. (To confirm!)
How to Install Eclipse on Ubuntu Linux
Eclipse comes with many flavors (See 'Eclipse Packages' @ https://www.eclipse.org/downloads/compare.php):
- To use Eclipse for Java programming, choose 'Eclipse IDE for Java Developers' (JavaSE) or 'Eclipse IDE for Java EE Developers' (JavaEE). You need to first install JDK. Read 'How to install JDK on Ubuntu'.
- To use Eclipse for PHP programming, choose 'Eclipse IDE for PHP Developers'.
- To use Eclipse for C/C++ programming, choose 'Eclipse IDE for C/C++ Developers'.
Nonetheless, you can install any package, and then add more features when needed.
To install Eclipse (e.g, for Java Programming):
- Download Eclipse from http://www.eclipse.org/downloads/. Under 'Get Eclipse IDE 2020-12' ⇒ Click the link 'Download Packages' (instead of pushing the button 'Download x86_64'). Choose 'Eclipse IDE for Java Developers' for Java SE program development; or 'Eclipse IDE for Java EE Developers' for developing webapps ⇒ Linux x86_64. You will receive a tarball (e.g., '
eclipse-java-2020-12-R-linux-gtk-x86_64.tar.gz
') in the '~/Downloads
' folder. - We shall install Eclipse under
/usr/local
.
To run Eclipse, open the '/usr/local/eclipse
' folder and click on the 'Eclipse' icon; or start a 'Terminal', enter 'eclipse'.
Lock Eclipse on Launcher
Simply start Eclipse. Right-click the Eclipse icon ⇒ 'Lock to Launcher' or 'Add to Favourite'. Star wars kotor mods.
(For older version - If the above don't work) Create a /usr/share/applications/eclipse.desktop
file with the following contents:
Start Eclipse, right-click on the Eclipse icon on launcher ⇒ 'Lock to launcher'.
Writing your First Java Program in Eclipse
Step 0: Launch Eclipse
- Launch Eclipse by running '
eclipse.exe
' from the Eclipse installed directory. - Choose an appropriate directory for your workspace, i.e., where you would like to save your files (e.g.,
c:myProjecteclipse
for Windows) ⇒ Launch. - If the 'Welcome' screen shows up, close it by clicking the 'close' button next to the 'Welcome' title.
Step 1: Create a new Java Project
For each Java application, you need to create a project to keep all the source files, classes and relevant resources.To create a new Java project:
- Choose 'File' menu ⇒ 'New' ⇒ 'Java project' (or 'File' ⇒ 'New' ⇒ 'Project' ⇒ 'Java project').
- The 'New Java Project' dialog pops up.
- In 'Project name', enter '
FirstProject
'. - Check 'Use default location'.
- In 'JRE', select 'Use default JRE (currently 'JDK11.0.x')'. But make sure that your JDK is 1.8 and above.
- In 'Project Layout', check 'Use project folder as root for sources and class files'.
- In 'Project name', enter '
- In 'Create module-info.java' dialog, Click 'Don't Create'. (Note: For easier version of Eclipse, you need to use the 'Next' Button in the previous step, and uncheck 'Create module-info.java file').
Step 2: Write a Hello-world Java Program
- In the 'Package Explorer' (left pane) ⇒ Right-click on '
FirstProject
' (or use the 'File' menu) ⇒ New ⇒ Class. - The 'New Java Class' dialog pops up.
- In 'Source folder', keep the 'FirstProject'.
- In 'Package', delete the content if it is not empty.
- In 'Name', enter '
Hello
'. - Check '
public static void main(String[] args)
'. - Don't change the rest.
- The source file '
Hello.java
' opens on the editor panel (the center pane). Enter the following codes:
Step 3: Compile & Execute the Java Program
- There is no need to compile the Java source file in Eclipse explicitly. It is because Eclipse performs the so-called incremental compilation, i.e., the Java statement is compiled as and when it is entered.
- To run the program, right-click anywhere on the source file '
Hello.java
' (or choose 'Run' menu) ⇒ Run As ⇒ Java Application. - The output 'Hello, world!' appears on the Console panel (the bottom pane).
NOTES:
- You should create a NEW Java project for EACH of your Java application.
- Nonetheless, Eclipse allows you to keep more than one programs in a project, which is handy for writing toy programs (such as your tutorial exercises). To run a particular program, open and right-click on the source file ⇒ Run As ⇒ Java Application.
- Clicking the 'Run' button (with a 'Play' icon) runs the recently-run program (based on the previous configuration). Try clicking on the 'down-arrow' besides the 'Run' button.
Correcting Syntax Errors
Eclipse performs incremented compilation, as and when a source 'line' is entered. It marked a source line having syntax error with a RED CROSS. Place your cursor at the RED CROSS to view the error message.
You CANNOT RUN the program if there is any syntax error (marked by a RED CROSS before the filename). Correct all the syntax errors; and RUN the program.
HINTS: In some cases, Eclipse shows a ORANGE LIGHT-BULB (for HINTS) next to the ERROR RED-CROSS (Line 5 in the above diagram). You can click on the LIGHT-BULB to get a list of HINTS to resolve this particular error, which may or may not work!
SYNTAX WARNING: marked by a orange triangular exclaimation sign. Unlike errors, warnings may or may not cause problems. Try to fix these warnings as well. But you can RUN your program with warnings.
Read the Eclipse Documentation
At a minimum, you SHOULD browse through Eclipse's 'Workbench User Guide' and 'Java Development User Guide' - accessible via the Eclipse's 'Welcome' page or 'Help' menu. This will save you many agonizing hours trying to figure out how to do somethings later.
Debugging Programs in Eclipse
Able to use a graphics debugger to debug program is crucial in programming. It could save you countless hours guessing on what went wrong.
Step 0: Write a Java Program
The following program computes and prints the factorial of n
(=1*2*3*..*n
). The program, however, has a logical error and produce a wrong answer for n
=20
('The Factorial of 20 is -2102132736
' - a negative number?!).
Let's use the graphic debugger to debug the program.
Step 1: Set an Initial Breakpoint
A breakpoint suspends program execution for you to examine the internal states (e.g., value of variables) of the program. Before starting the debugger, you need to set at least one breakpoint to suspend the execution inside the program. Set a breakpoint at main()
method by double-clicking on the left-margin of the line containing main()
. A blue circle appears in the left-margin indicating a breakpoint is set at that line.
Step 2: Start Debugger
Right click anywhere on the source code (or from the 'Run' menu) ⇒ 'Debug As' ⇒ 'Java Application' ⇒ choose 'Yes' to switch into 'Debug' perspective (A perspective is a particular arrangement of panels to suits a certain development task such as editing or debugging). The program begins execution but suspends its operation at the breakpoint, i.e., the main()
method.
As illustrated in the following diagram, the highlighted line (also pointed to by a blue arrow) indicates the statement to be executed in the next step.
Step 3: Step-Over and Watch the Variables and Outputs
Click the 'Step Over' button (or select 'Step Over' from 'Run' menu) to single-step thru your program. At each of the step, examine the value of the variables (in the 'Variable' panel) and the outputs produced by your program (in the 'Console' Panel), if any. You can also place your cursor at any variable to inspect the content of the variable.
Single-stepping thru the program and watching the values of internal variables and the outputs produced is the ultimate mean in debugging programs - because it is exactly how the computer runs your program!
Step 4: Breakpoint, Run-To-Line, Resume and Terminate
As mentioned, a breakpoint suspends program execution and let you examine the internal states of the program. To set a breakpoint on a particular statement, double-click the left-margin of that line (or select 'Toggle Breakpoint' from 'Run' menu).
'Resume' continues the program execution, up to the next breakpoint, or till the end of the program.
'Single-step' thru a loop with a large count is time-consuming. You could set a breakpoint at the statement immediately outside the loop (e.g., Line 11 of the above program), and issue 'Resume' to complete the loop.
Alternatively, you can place the cursor on a particular statement, and issue 'Run-To-Line' from the 'Run' menu to continue execution up to the line.
'Terminate' ends the debugging session. Always terminate your current debugging session using 'Terminate' or 'Resume' till the end of the program.
Step 5: Switching Back to Java perspective
Click the 'Java' perspective icon on the upper-right corner to switch back to the 'Java' perspective for further programming (or 'Window' menu ⇒ Open Perspective ⇒ Java).
Important: I can's stress more that mastering the use of debugger is crucial in programming. Explore the features provided by the debuggers.
Other Debugger's Features
Step-Into and Step-Return: To debug a method, you need to use 'Step-Into' to step into the first statement of the method. ('Step-Over' runs the function in a single step without stepping through the statements within the function.) You could use 'Step-Return' to return back to the caller, anywhere within the method. Alternatively, you could set a breakpoint inside a method.
Modify the Value of a Variable: You can modify the value of a variable by entering a new value in the 'Variable' panel. This is handy for temporarily modifying the behavior of a program, without changing the source code.
Tips & Tricks
General Usages (for all Programming Tasks)
These are the features that I find to be most useful in Eclipse:
- Maximizing Window (Double-Clicking): You can double-click on the 'header' of any panel to maximize that particular panel, and double-click again to restore it back. This feature is particularly useful for writing source code in full panel.
- Shorthand Templates (sysout, for,..): You can type '
sysout
' followed by a ctrl+space (or alt-/) as a shorthand for typing 'System.out.println()
'.
The default shortcut key (ctrl-space or alt-/) depends on the system. Check your system's shortcut key setting in 'Edit' ⇒ 'Content Assist' ⇒ 'Default'. Take note that many of you use ctrl+space to switch between input languages. You need to reconfigure either your language switching hot-key or Eclipse.
Similarly, you can type 'for' followed by ctrl-space (or alt-/) to get a for-loop.
You can create your own shorthand in 'Window' menu ⇒ 'Preferences' ⇒ 'Java' ⇒ 'Editor' ⇒ 'Templates'. (Alternatively, in 'Window' ⇒ 'Preferences' ⇒ type 'template' as filter text and choose 'Java' ⇒ 'Editor' ⇒ 'Templates'.)
You can change your key settings in 'Window' menu ⇒ 'Preferences' ⇒ 'General' ⇒ 'Key' ⇒ choose 'Command', 'Content Assist'. (Alternatively, in 'Window' ⇒ 'Preferences' ⇒ type 'key' as filter text and choose 'General' ⇒ 'Key'.) - Intelli-Sense (ctrl-space): You can use ctrl-space to activate the 'intelli-sense' (or content assist). That is, Eclipse will offer you the choices, while you are typing.
- Source Formatting (ctrl-shift-f): Right-click on the source. Choose 'Source' ⇒ 'Format' to let Eclipse to layout your source codes with the proper indentation.
- Source Toggle Comment (ctrl-/): To comment/uncomment a block of codes, choose 'Source' ⇒ 'Toggle Comment'.
- Hints for Correcting Syntax Error: If there is a syntax error on a statement, a red mark will show up on the left-margin on that statement. You could click on the 'light bulb' to display the error message, and also select from the available hints for correcting that syntax error.
- Refactor (or Rename) (alt-shift-r): You can rename a variable, method, class, package or even the project easily in Eclipse. Select and right-click on the entity to be renamed ⇒ 'Refactor' ⇒ 'Rename'. Eclipse can rename all the occurrences of the entity.
- Line Numbers: To show the line numbers, choose 'Window' menu ⇒ 'Preferences' ⇒ 'General' ⇒ 'Editors' ⇒ 'Text Editors' ⇒ Check the 'Show Line Numbers' Box. You can also configure many editor options, such as the number of spaces for tab. Alternatively, you can right-click on the left-margin, and check 'Show Line Numbers'.
- Error Message Hyperlink: Click on an error message will hyperlink to the corresponding source statement.
- Changing Font Type and Size: From 'Window' menu ⇒ 'Preferences' ⇒ 'General' ⇒ 'Appearance' ⇒ 'Colors and Fonts' ⇒ expand 'Java' ⇒ 'Java Editor Text Font' ⇒ 'Edit'. (Alternatively, in 'Window' ⇒ 'Preferences' ⇒ type 'font' as filter text and choose the appropriate entry.)
- Unicode Support: To enable Unicode support, select 'Window' menu ⇒ Preferences ⇒ General ⇒ Workspace ⇒ Text file encoding ⇒ UTF-8. This sets the default character set used for file encoding, similar to VM's command-line option
-Dfile.encoding=UTF-8
. Commonly used charsets for Unicode are UTF-8, UTF-16 (with BOM), UTF-16BE, UTF-16LE. Other charsets are US-ASCII, ISO-8859-1. - Mouse Hover-over: In debug mode, you could configure to show the variable's value when the mouse hovers over the variable. Select 'Window' menu ⇒ 'Preferences' ⇒ 'Java' ⇒ 'Editor' ⇒ 'Hover'.
- Comparing Two Files: In ';Package Explorer', select two files (hold the control key) ⇒Right-click ⇒ Compare with.
- Setting Keyboard Shortcut Keys: You can set/change the keyboard shortcut keys at 'Window' ⇒ 'Preferences' ⇒ 'General' ⇒ 'Key'.
I like to set the frequently-used commands to Ctrl-1 to Ctrl-10, for examples, 'Run Java Application' to 'Ctrl-1', etc. - Useful Eclipse Shortcut Keys:
- F3: Goto the declaration of the highlighted variable/method.
- Ctrl-Shift-G: Search for ALL references of the highlighted variable/method in workspace.
- Ctrl-G: Search for the Declaration of a variable/method in workspace.
Don't use Find (Ctrl-F), but use the above context-sensitive search. - Ctrl-Shift-F: Format the source code.
- Ctrl-Shift-O: Organize imports.
- Alt-Shift-R: Rename. (Don't use Find/Replace.)
- Ctrl-Space: auto-complete.
- Package Explorer vs. Navigator: We usually use 'Package Explorer' in programming, but it will not show you all the folders and files under the project. On the other hand, 'Navigator' is a file manager that shows the exact file structure of the project (similar to Windows Explorer). You can enable the Navigator by 'Window' ⇒ Show view ⇒ Navigator.
- Spell Check: To enable spell check, select Window ⇒ Preferences ⇒ type 'spell' in the filter ⇒ General ⇒ Editors ⇒ Text Editors ⇒ Spelling ⇒ Check 'Enable spell checking'. Also provide a 'User defined dictionary' (with an initially empty text file).
To correct mis-spell words, right-click and press ctrl-1 (or Edit menu ⇒ Quick Fix). - Eclipse's Log File: Goto Help ⇒ about Eclipse ⇒ Installation details ⇒ Configuration ⇒ View Error Log.
- Viewing two files in split screen: Simply click and hold on the title of one file and drag it to the lower side of the screen. [To view the same file on split screen, create a new editor window by selecting Window ⇒ New Editor; and drag one window to the lower side of the screen.]
- Block Select (Column Select): Push Alt-Shift-A to toggle between block-select mode and normal mode.
- Snippets:
- To view the snippet window: choose 'Window' ⇒ Show View ⇒ Snippets.
- To create a new snippet category: Right-click ⇒ Customize ⇒ New.
- To create a new snippet item: Copy the desired text ⇒ Select the snippet category ⇒ paste as snippet.
- To insert a snippet: place the cursor on the desired location at the editor panel ⇒ click the snippet item.
- Word Wrap (Line Wrap): Word-wrap (or line-wrap) is essential for editing long HTML documents without the horizontal scroll bar. However, the Eclipse's HTML Editor and Text Editor do not support word-wrap.
You could install a plug-in called 'Word Wrap' from http://ahtik.com/eclipse-update/.
Choose 'Help' ⇒ Install New Software ⇒ in 'Work with' Enter 'http://ahtik.com/eclipse-update/'.
To activate word wrap, right-click on the editor panel ⇒ select 'Word Wrap'. - Creating 'link folder' in project: You do not have to place all the folders under the project base directory, instead, you can use so-called 'link folders' to link to folder outside the project base directory.
To create a link folder in a project, right-click on the project ⇒ File ⇒ New ⇒ Folder ⇒ Advanced ⇒ Check Link to alternate Location (Linked Folder). - Running Eclipse in 'clean' mode: You can run eclipse in so-called '
clean
' mode, which wipes all the cached data and re-initialize the cache, by running eclipse from command-line with '-clean' argument (i.e., 'eclipse -clean
'). It is useful if something is not working proper, especially if you install a new copy of Eclipse. - Show the Right Margin: Window ⇒ Preferences ⇒ General ⇒ Editors ⇒ Text Editors ⇒ Show Print Margin and set the column number.
- Let me know if you have more tips to be included here.
Update Eclipse and Install new Software
- Install New Software: Select 'Help' menu ⇒ Install New Software ⇒ In 'Work With', pull down the select menu and choose a software site.
- Update: Select 'Help' menu ⇒ Check for Updates ⇒.
For Java Application Development Only
- Small Toy Java Programs: You can keep many small programs (with
main()
) in one Java project instead of create a new project for each toy program. To run the desired program, right-click on the source file ⇒ 'Run as' ⇒ 'Java Application'. - Scanner/printf() and JDK 1.5: If you encounter syntax error in using
printf()
orScanner
(which are available from JDK 1.5), you need to check your compiler settings. Select 'Window' menu ⇒ Preferences ⇒ open the 'Java' node ⇒ select 'Compiler' ⇒ in 'Compiler compliance level' ⇒ select the latest release, which should be '1.5' or above. - Command-Line Arguments: To provide command-line arguments to your Java program in Eclipse, right-click on the source file ⇒ 'Run Configurations' ⇒ Under the 'Main' panel, check that 'Project' name and 'Main Class' are appropriate ⇒ Select the 'Argument' tab ⇒ type your command-line arguments inside the 'Program Arguments' box ⇒ 'Run'.
- Resolving Import (Ctrl-Shift-o): To ask Eclipse to insert the
import
statements for classes. Useful when you copy a large chunk of codes without the corresponding import statements. - Including Another Project: To include another project in the same work space, right-click on the project ⇒ Build Path ⇒ Configure Build Path.. ⇒ Select 'Projects' tab ⇒ 'Add..' to select project in the existing work space ⇒ OK.
- Exporting a Project to a JAR file: Right-click on the project ⇒ Export.. ⇒ Java, JAR File ⇒ Next ⇒ Select the files to be exported ⇒ Next ⇒ Next ⇒ In 'JAR Manifest Specification' dialog, enter the main class (if you wish to run the JAR file directly) ⇒ Finish.
- Unit Testing: If you keep your test in another project, you need to include the project under test in your Build Path (see above).
To create a test case: Right-click on the project ⇒ New ⇒ JUnit Test Case ⇒ the 'New JUnit Test Case' dialog appears. Select 'New JUnit 4 Test'. In 'Name', enter your class name. In 'Class under test', browse and select the class to be tested.
To run the test: Right-click ⇒ 'Run As' ⇒ 'JUnit Test'. The results are displayed in a special 'JUnit console'. - Adding External JAR files & Native Libraries ('.dll', '.lib', '.a', '.so'): Many external Java packages (such as JOGL, Java3D, JAMA, etc) are available to extend the functions of JDK. These packages typically provide a '
lib
' directory containing JAR files ('.jar
') (Java Archive - a single-file package of Java classes) and native libraries ('.dll
', '.lib
' for windows, '.a
', '.so
' for Linux and macOS).
To include these external packages into an Eclipse's project, right-click on the project ⇒ Build Path ⇒ Add External Archives ⇒ Navigate to select the JAR files ('.jar
') to be included.
In 'Package Explorer', right-click on the JAR file added ⇒ Properties:- To include native libraries ('
.dll
', '.lib
', '.a
', '.so
'), select 'Native Library' ⇒ 'Location Path' ⇒ 'External Folder'. - To include the javadoc, select 'JavaDoc Location' ⇒ 'JavaDoc URL' ⇒ You can specify a local file or a remote link.
- To include source file (for debugging), select 'Java Source Attachment'.
Notes: The JAR files must be included in theCLASSPATH
. The native library directories must be included in JRE's property 'java.library.path
', which normally but not necessarily includes all the paths from thePATH
environment variable. Read 'External JAR files and Native Libraries'. - To include native libraries ('
- Creating a User Library: You can also create a Eclipse's user library to include a set of JAR files and native libraries, that can then be added into subsequent Eclipse projects.
For example, I created a user library for 'JOGL' as follows:- From 'Window' menu ⇒ Preferences ⇒ Java ⇒ Build Path ⇒ User Libraries ⇒ New ⇒ In 'User library name', enter '
jogl
'. The 'User Library' dialog appears. - In 'User Library' dialog ⇒ Select '
jogl
' ⇒ Add JAR.. ⇒ Navigate to<JOGL_HOME>/lib
, and select 'gluegen-rt.jar
' and 'jogl.jar
'. - Expand the '
jogl.jar
' node ⇒ Select 'Native library location: (none)' ⇒ Edit.. ⇒ External Folder.. ⇒ select<JOGL_HOME>/lib
. - Expand the '
jogl.jar
' node ⇒ Select 'Javadoc location: (none)'
⇒ Edit.. ⇒ Javadoc in archive ⇒ In 'Archive Path', 'Browse' and select the downloaded JOGL API documentation zip-file ⇒ In 'Path within archive', 'Browse' and expand the zip-file to select the top-level path (if any) ⇒ Validate. Alternatively, you can provide the path to the un-zipped javadocs. This is needed for Eclipse to display javadoc information about classes, fields, and methods. - You may provide the source files by editing 'Source attachment: (none)'. Source is needed only if you are interested to debug into the JOGL source codes.
jogl
'. - From 'Window' menu ⇒ Preferences ⇒ Java ⇒ Build Path ⇒ User Libraries ⇒ New ⇒ In 'User library name', enter '
- Running an External Program: Suppose that you want to run a Perl script on the selected file, you can configure an external tool as follows:
- From 'Run' menu ⇒ External Tools ⇒ External Tools Configuration.. ⇒ The 'External Tools Configuration' dialog appears.
- In 'Name', enter your tool name.
- Choose the 'Main' tab ⇒ In 'Location', 'Browse File System..' to choose the perl interpreter 'perl' ⇒ In 'Arguments', enter '
path/scriptname.pl ${resource_loc}
', where${resource_loc}
is an Eclipse variable that denotes the currently selected resource with absolute path. - Choose the 'Common' tab ⇒ In 'Standard Input and Output', uncheck 'Allocate Console', check 'File' and provide an output file (e.g.,
d:temp${resource_name}.txt
). - (If you use the CYGWIN perl interpreter, need to set environment variable CYGWIN=nodosfilewarning to disable warning message.)
- Viewing Hex Code of Primitive Variables in Debug mode: In debug perspective, 'Variable' panel ⇒ Select the 'menu' (inverted triangle) ⇒ Java ⇒ Java Preferences.. ⇒ Primitive Display Options ⇒ Check 'Display hexadecimal values (byte, short, char, int, long)'.
- Adding a New Version of JDK/JRE: First, you can check the installed JDK/JRE via 'Window' menu ⇒ 'Preferences' ⇒ Expand 'Java' node ⇒ 'Installed JREs'. Check the 'Location' current JRE installed to make sure that it is the intended one. You can use the 'Add' button to add a new version of JRE. For program development, I recommend that you add the JDK (instead of JRE). [The 'Location' decides the extension directory used for including additional JAR files, e.g.,
$JAVA_HOMEjrelibext
.]
For Web Developers
- HTML Editor: Use the 'Web Page Editor' (available in Eclipse Java EE), which provides the design view (WYSISYG).
To use the 'Web Page Editor', right-click on the HTML file, open as 'Web Page Editor'.
To make the 'Web Page Editor' as default for HTML file, goto Window ⇒ Preferenes ⇒ General ⇒ Editor ⇒ File Associations ⇒ .htm and .html ⇒ Select 'Web page editor' ⇒ default.
File I/O in Eclipse
Suppose that your want to write a Java program, which inputs from a text file called 'xxxx.in
' and outputs to a text file called 'xxxx.out
'. This is a little tricky under Eclipse due to:
- When you create a text file in Windows' Notepad and saved it as '
xxxx.in
', Notepad will append the '.txt
' to your file and it becomes 'xxxx.in.txt
'. Worse still, the Windows' Explorer, by default, will not show the '.txt
' extension. (The first thing I always do to an alien computer is to change this setting. From 'Tools' menu ⇒ Folder Options.. ⇒ View ⇒ Uncheck 'Hide extensions for known file types'.) You need to put a pair of double quotes aroundxxxx.in
to override the default '.txt
' extension. This is one good reason not to use Notepad for programming at all. You should use Eclipse to create the text file instead. - Which directory to keep the input file '
xxxx.in
' in Eclipse?- If you did not separate the sources and class files into two separate directories, then the answer is straight forward, because there is only one directory to place your input file.
- If you choose to keep your sources and class files in two separate directories, eclipse will create two sub-directories 'src' and 'bin' under the base directory. BUT you need to put your input file '
xxxx.in
' in the base directory of your project, instead of the 'src' or 'bin'.
- Put the sources, class files, and the input/output files in the same directory. (When you create a new project, select 'Use project folder as root for sources and class files' in 'Project Layout'.) (But put your sources and class files in separate directories for big project.)
- You can create you input file from eclipse directly via 'File' menu ⇒ 'New' ⇒ 'File'.
- Remember to add a newline to the end of your input file.
- You may need to right-click the project and select 'Refresh' to see the output file '
xxxx.out
' created in the package explorer. - To open the '
xxxx.in
' and 'xxxx.out
': right-click ⇒ Open With ⇒ Text Editor.
This is a sample JDK 1.5 program for file input/output:
Create the input text file called 'FileIOTest.in
' with the following contents and terminated with a newline:
Writing Swing Applications using Eclipse GUI Builder
Eclipse provides a visual GUI builder called 'WindowBuilder' (@ https://www.eclipse.org/windowbuilder), which supports AWT/Swing, SWT (Eclipse's Standard Widget Toolkit - an alternative to JDK's AWT/Swing), XWT, GWT, eRCT.
Step 0: Install WindowBuilder
To install 'WindowBuilder', goto 'Help' ⇒ Install New Software ⇒ In 'Work with', enter 'https://download.eclipse.org/windowbuilder/latest/' (You can find the proper link from 'http://www.eclipse.org/windowbuilder/download.php') ⇒ Check 'WindowBuilder' ⇒ Next ⇒ Next ⇒ Accept the licence ⇒ Finish.
Step 1: Create a New 'Java Application' Project
- Choose 'File' menu ⇒ 'New' ⇒ 'Java project'.
- The 'New Java Project' dialog pops up.
- In the 'Project name' field, enter '
FirstSwingProject
'. - Check 'Use default location'.
- In the 'JRE' box, select 'Use default JRE (currently 'JDK1.x')'.
- Click 'Finish'.
- In the 'Project name' field, enter '
Step 2: Create a Swing JFrame Subclass
- Choose 'File' menu ⇒ 'New' ⇒ 'Others' ⇒ 'WindowBuilder' ⇒ 'Swing Designer' ⇒ 'JFrame' ⇒ 'Next'.
- In the 'Create JFrame' dialog ⇒ Enter 'SwingMain' in the 'Name' field ⇒ 'Finish'.
- Select the 'Design' pane.
- In 'Layouts', select 'FlowLayout' and click on the 'design form'.
- From 'Components', select '
JLabel
' and click on the design form. Change the label text to 'Counter: '. Select a 'JTextField' and place it on the design form. Change the text to '0'. Select a 'JButton' and place it on the design form. Change the text label to 'Count'. - To attach a event-handler to the button, double-click the
JButton
to switch into the 'Source' pane, with the event-handler skeleton created. Complete theactionPerformed()
as follows: Add an instance variable calledcount
as follow: - You can now ready run the program. Right-click on the project ⇒ Run As ⇒ Java Application.
Eclipse Generated Codes
Study the codes generated by Eclipse GUI Builder, as follows, which is just a typical Swing application.
Eclipse for C/C++ Programming
Here.
Eclipse PDT (PHP Development Tool)
Here.
Eclipse-JavaEE and Database Development
Reference: 'Data Tools Platform User Documentation' @ Eclipse Welcome page.
You need to install:
- 'Eclipse for Java EE' (aka 'Eclipse IDE for Enterprise Java Developers').
- 'MySQL Community Server' and 'MySQL Connector/J Driver'. Read 'How to install and get started with MySQL'.
To use Eclipse for MySQL development:
- Switch to 'Database Development' perspective:
From 'Window' menu ⇒ Open Perspective ⇒ Other ⇒ Database Development. - Create a Database Connection: Start your MySQL database server ⇒ Right-click 'Database Connection' ⇒ New. Take note that each database connection connect to ONE particular database in the database server with a URL in the form of jdbc:mysql://localhost:3306/database-name.
- In 'Connection Profile', choose 'MySQL' ⇒ Next.
- In 'Drivers', click the icon for 'New Driver Definition' (if the driver has not been defined).
- In 'Specify a Driver Template and Definition Name':
- Choose the 'Name/Type' tab ⇒ Choose one of the database driver as our template (e.g. MySQL 5.1) for further customization ⇒ Set your 'Driver name', e.g., 'mysql-connector-java-8.0.23'.
- Switch to 'JAR List' tab ⇒ Clear All ⇒ Click 'Add JAR/Zip' and select the driver JAR file, e.g., mysql-connector-java-8.0.23.jar.
- Switch to 'Properties' tab ⇒ Check the parameters.
- OK.
- Enter the 'Database' name, URL (with the same database name), and the 'Password' ⇒ Click 'Test Connection'
- Finish.
- In 'Datasource Explorer', you can 'connect' and 'disconnect' the connection.
- To view and edit table visually, expand database 'Schemas' to look for the table. Right-right on the table ⇒ Data ⇒ Edit. You can modify the cells and 'save' the changes.
- To create a new SQL script, choose File ⇒ New ⇒ SQL File ⇒ You may use an existing project or create a new project (General|Project or Web|Dynamic Web Project) ⇒ Enter filename, and set the connection profile name ⇒ Finish. Enter a SQL statement (e.g., SELECT * FROM tablename) ⇒ Right-click on the text ⇒ 'Execute Current Text' or 'Execute All'.
- To use an existing SQL file, drop the file into a project and open the SQL file. In Connection profile, set the type and connection name. Right-click on a statement ⇒ 'Execute ..'.
Developing and Deploying Webapps in Eclipse-JavaEE
Setting Up Eclipse-JavaEE for Web Development
- Install 'Eclipse for Java EE' (aka 'Eclipse IDE for Enterprise Java Developers').
- Install Tomcat (or Glassfish) server.
- Configuring Web Server: Launch Eclipse ⇒ Window ⇒ Preferences ⇒ Expand the 'Server' node ⇒ 'Runtime Environments' ⇒ 'Add..' ⇒ Expand 'Apache' and select 'Apache Tomcat vX.X' ⇒ Enter your 'Tomcat Installation Directory' ⇒ 'Finish'.
Writing a Hello-world Servlet
- Switch to 'Java EE' perspective (which is the default perspective for Eclispe-JavaEE):
From 'Window' menu ⇒ Open Perspective ⇒ Other ⇒ Java EE. - Create a new Web Application Project: from 'File' ⇒ New ⇒ Dynamic Web Project (under 'Web' category) ⇒ In 'Project Name', enter '
HelloServletProject
' ⇒ 'Finish'. - Create a new Servlet: Right-click on the project '
HelloServletProject
' ⇒ New ⇒ Servlet ⇒ In 'Java Package', enter 'mypkg
'; in 'Class Name', enter 'HelloServlet
' ⇒ Next ⇒ In 'URL Mappings', select '/HelloServlet
' ⇒ 'Edit' to '/sayhello
' ⇒ Next ⇒ In 'Which method stubs would you like to create', check 'Inherited abstract method', 'doGet' and 'doPost' (default) ⇒ Finish.
In 'HelloServlet.java', enter the following codes:(For Servlet 2.4/2.5 with Tomcat 6) The annotation
@WebServlet
is new in Servlet 3.0 and is not supported in Servlet 2.4/2.5. Hence, you need to manually configure the URL for the servlet in the Web Application Deployment Descriptor 'web.xml
' under directory 'WEB-INF
', as follows: - To execute the Servlet, right-click on the '
HelloServletProject
' ⇒ 'Run As' ⇒ 'Run on Server' ⇒ Change the URL to 'http://localhost:8080/HelloServletProject/sayhello
'.
Writing a Hello-world JSP (Java Server Pages)
- Create a new Web Application: File ⇒ New ⇒ Dynamic Web Project (under 'Web' category) ⇒ In 'Project Name', enter '
HelloJSPProject
' ⇒ Finish. - Create a new JSP File: Right-click on the project '
HelloJSPProject
' ⇒ New ⇒ JSP File ⇒ The parent folder shall be 'HelloJSPProject/WebContent' ⇒ In 'File Name', enter 'hello.jsp
' ⇒ 'Finish'. - Enter the following HTML/JSP codes:
- To execute the JSP, right-click on '
hello.jsp
' ⇒ Run As ⇒ Run on Server.
Exporting a Webapp as a WAR file
Right-click on the project to be exported ⇒ Export ⇒ WAR File ⇒ In 'Destination', specify the destination directory and filename (the filename shall be the web application name) ⇒ Finish.
- To deploy the war file in Tomcat, simply drop the war file into Tomcat's '
webapps
' folder. The war file will be automatically extracted and deployed. The web application name is the war-filename. - You could use WinZip (or WinRAR) to view the content of the war file, as war-file is in ZIP format.
Deploying a webapp outside the Tomcat's webapps directory
Eclipse
To deploy a webapp (called hello
) outside the %TOMCAT_HOME%webapps
directory, create a hello.xml
file as follows and place it under the %TOMCAT_HOME%confCatalinalocalhost
:
Writing a Hello-world JSF (JavaServer Faces)
[TODO]
Debugging Webapps
Eclipse Indigo Download Mac Free
You can debug a webapp just like standalone application. For example, you can set breakpoints, single-step through the programs, etc.
Eclipse Indigo Download Mac Version
REFERENCES & RESOURCES
Java Eclipse Indigo Download
- Eclipse mother site @ https://www.eclipse.org.
- Eclipse documentation and user guides, accessible via Eclipse's Help and menu.