[ACCEPTED]-Eclipse: Difference between clean, build and publish-publish

Accepted answer
Score: 54

When you run "project > Build" , eclipse will compile all 27 sources in folders on the build path to 26 the .class files and put the .class files 25 into the output folder you specified. Both 24 of these folders can be configured from 23 Project-> Properties-> Java Build Path . Note that eclipse has the incremental 22 build feature that will only compile the 21 sources that have changed since the last 20 time the project is build.

If you enable 19 Auto-build for the project ( via "Project-> Build Automatically" ) , the 18 "project > Build" will run automatically when you add, remove, or 17 modify the source files on the build path 16 , so you don't have to call "project 15 > Build" manually in this case.

The 14 Publish option in the server tab will deploy the 13 application to your Tomcat instance by 12 copying the project resources such as xml 11 configuration files , web resource (html 10 ,css, js etc) , and the compiled .class 9 files you get from the "project > Build" to the correct 8 location of the Tomcat instance .

So , "Project > Build" is 7 about compiling java sources to the .class 6 files while the options in the server tab 5 is about deploying the application to the 4 tomcat instance and maintaining the tomcat 3 instance .

You can find the information about 2 the "server tab" (i.e. Web Tools 1 Platform) from the following links: http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.wst.server.ui.doc.user/topics/tpublish.html http://wiki.eclipse.org/WTP_Tomcat_FAQ

Score: 19

Build: compile changed source files on the 4 build path in the project
Clean: compile 3 all source files on the build path in the 2 project
Publish: Deploying the updated project 1 in the web server instance

Score: 4

Clean, Publish and Clean Tomcat Work directory 6 options work on server files, on the other 5 hand Project>build work on workspace files 4 (projects are inside workspace folder). Server 3 files and workspace files are usually in 2 separated folders, it depends on how do 1 you have configured your server.

More Related questions