{"id":955,"date":"2012-02-02T21:30:00","date_gmt":"2012-02-02T21:30:00","guid":{"rendered":"http:\/\/www.javacodegeeks.com\/2012\/10\/launching-and-debugging-tomcat-from-eclipse-without-complex-plugins.html"},"modified":"2012-10-21T23:07:11","modified_gmt":"2012-10-21T23:07:11","slug":"launching-and-debugging-tomcat-from","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html","title":{"rendered":"Launching and Debugging Tomcat from Eclipse without complex plugins"},"content":{"rendered":"<div dir=\"ltr\" style=\"text-align: left\">Modern IDEs like Eclipse provide various Plugins to ease web developement. However, I believe that starting Tomcat as &#8220;normal&#8221; Java application still provides the best debugging experience. Most of the time, this is because these tools launch Tomcat or any other servlet container as external process and then attach a remote debugger on it. While you&#8217;re still able to set breakpoints and inspect variables, other features like hot code replacement don&#8217;t work that well.<\/p>\n<p>Therefore I prefer to start my Tomcat just like any other Java application from within Eclipse. Here&#8217;s how it works:<\/p>\n<p><i>This article addresses experienced Eclipse users. You should already know how to create projects, change their built path and how to run classes. If you need any help, feel free to leave a comment or contact me.<\/i><\/p>\n<p>We&#8217;ll add the Tomcat as additional Eclipse project, so that paths and all remain platform independent. (I even keep this project in our SVN so that everybody works with the same setup).<\/p>\n<p><strong>Step 1<\/strong> &#8211; Create new Java project named &#8220;<i>Tomcat7<\/i>&#8221;<\/p>\n<div class=\"separator\" style=\"clear: both;text-align: center\"><a href=\"http:\/\/3.bp.blogspot.com\/-2D1Svc4mFwE\/TynEEzElA1I\/AAAAAAAAAIY\/jREyQ3d-rfs\/s1600\/step1.png\"><img decoding=\"async\" border=\"0\" height=\"400\" src=\"http:\/\/3.bp.blogspot.com\/-2D1Svc4mFwE\/TynEEzElA1I\/AAAAAAAAAIY\/jREyQ3d-rfs\/s400\/step1.png\" width=\"338\" \/><\/a><\/div>\n<p><strong>Step 2<\/strong> &#8211; Remove the &#8220;src&#8221; source folder<\/p>\n<div class=\"separator\" style=\"clear: both;text-align: center\"><a href=\"http:\/\/2.bp.blogspot.com\/-jaNP7pBP56U\/TynENRC3-5I\/AAAAAAAAAIg\/Ysa7Vaz8o04\/s1600\/step2.png\"><img decoding=\"async\" border=\"0\" height=\"303\" src=\"http:\/\/2.bp.blogspot.com\/-jaNP7pBP56U\/TynENRC3-5I\/AAAAAAAAAIg\/Ysa7Vaz8o04\/s400\/step2.png\" width=\"400\" \/><\/a><\/div>\n<p><strong>Step 3<\/strong> &#8211; <a href=\"http:\/\/tomcat.apache.org\/download-70.cgi\">Download Tomcat<\/a> (Core Version) and unzip into our newly created project. This should now look something like this:<\/p>\n<div class=\"separator\" style=\"clear: both;text-align: center\"><a href=\"http:\/\/2.bp.blogspot.com\/-wrfkUuUWp9U\/TynEXUTYI0I\/AAAAAAAAAIo\/kWTEt7j8H4w\/s1600\/step3.png\"><img decoding=\"async\" border=\"0\" height=\"268\" src=\"http:\/\/2.bp.blogspot.com\/-wrfkUuUWp9U\/TynEXUTYI0I\/AAAAAAAAAIo\/kWTEt7j8H4w\/s400\/step3.png\" width=\"400\" \/><\/a><\/div>\n<p><strong>Step 4<\/strong> &#8211; If you havn&#8217;t, create a new <i>Test <\/i>project which contains your sources (servlets, jsp pages, jsf pages&#8230;). Make sure you add the required libraries to the built path of the project<div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<div class=\"separator\" style=\"clear: both;text-align: center\"><a href=\"http:\/\/1.bp.blogspot.com\/-kTSQbvswWRQ\/TynEf7wplzI\/AAAAAAAAAIw\/FzZ0xhcqFMw\/s1600\/step4.png\"><img decoding=\"async\" border=\"0\" height=\"303\" src=\"http:\/\/1.bp.blogspot.com\/-kTSQbvswWRQ\/TynEf7wplzI\/AAAAAAAAAIw\/FzZ0xhcqFMw\/s400\/step4.png\" width=\"400\" \/><\/a><\/div>\n<p><strong>Step 5.1<\/strong> &#8211; Create a run configuration. Select our Test project as base and  set <strong>org.apache.catalina.startup.Bootstrap<\/strong> as main class.<\/p>\n<div class=\"separator\" style=\"clear: both;text-align: center\"><a href=\"http:\/\/3.bp.blogspot.com\/-HPtVF-__wt4\/TynEs3G9VdI\/AAAAAAAAAI4\/mAi8L09SwzI\/s1600\/step5-1.png\"><img decoding=\"async\" border=\"0\" height=\"365\" src=\"http:\/\/3.bp.blogspot.com\/-HPtVF-__wt4\/TynEs3G9VdI\/AAAAAAAAAI4\/mAi8L09SwzI\/s400\/step5-1.png\" width=\"400\" \/><\/a><\/div>\n<p><strong>Step 5.2<\/strong> &#8211;  Optionally specify larger heap settings as VM arguments. <strong>Important<\/strong>: Select the &#8220;Tomcat&#8221; project as working directory (Click on the &#8220;Workspace&#8221; button below the entry field.<\/p>\n<div class=\"separator\" style=\"clear: both;text-align: center\"><a href=\"http:\/\/2.bp.blogspot.com\/-E9SYnqvdIOc\/TynE1UC2NyI\/AAAAAAAAAJA\/XJwliUTx97A\/s1600\/step5-2.png\"><img decoding=\"async\" border=\"0\" height=\"400\" src=\"http:\/\/2.bp.blogspot.com\/-E9SYnqvdIOc\/TynE1UC2NyI\/AAAAAAAAAJA\/XJwliUTx97A\/s400\/step5-2.png\" width=\"381\" \/><\/a><\/div>\n<p><strong>Step 5.3<\/strong> &#8211; Add<strong> bootstrap.jar<\/strong> and <strong>tomcat-juli.jar<\/strong> from the <i>Tomcat7\/bin<\/i> directory as bootstrap classpath.Add everything in <i>Tomcat7\/lib<\/i> as user entries. Make sure the Test project and all other classpath entries (i.e. maven dependencies) are below those.<\/p>\n<div class=\"separator\" style=\"clear: both;text-align: center\"><a href=\"http:\/\/4.bp.blogspot.com\/-E05XNeT26PU\/TynE_vXwOCI\/AAAAAAAAAJI\/L9H8vnUEi1s\/s1600\/step5-3.png\"><img decoding=\"async\" border=\"0\" height=\"400\" src=\"http:\/\/4.bp.blogspot.com\/-E05XNeT26PU\/TynE_vXwOCI\/AAAAAAAAAJI\/L9H8vnUEi1s\/s400\/step5-3.png\" width=\"382\" \/><\/a><\/div>\n<p>Now you can &#8220;Apply&#8221; and start Tomcat by hitting &#8220;Debug&#8221;. After a few seconds (check the console output) you can go to<a href=\"http:\/\/localhost:8080\/examples\/\"> http:\/\/localhost:8080\/examples\/<\/a> and check out the examples provided by Tomcat.<\/p>\n<p><strong>Step 6<\/strong> &#8211; Add Demo-Servlet &#8211; Go to our Test project, add a new package called &#8220;demo&#8221; and a new servlet called &#8220;TestServlet&#8221;. Be creative with some test output &#8211; <i>like I was&#8230;<\/i><\/p>\n<div class=\"separator\" style=\"clear: both;text-align: center\"><a href=\"http:\/\/4.bp.blogspot.com\/-Atu-Du_TvOc\/TynFKbPi6xI\/AAAAAAAAAJQ\/U7Z2yR-woj8\/s1600\/step6.png\"><img decoding=\"async\" border=\"0\" height=\"343\" src=\"http:\/\/4.bp.blogspot.com\/-Atu-Du_TvOc\/TynFKbPi6xI\/AAAAAAAAAJQ\/U7Z2yR-woj8\/s400\/step6.png\" width=\"400\" \/><\/a><\/div>\n<p><strong>Step 7<\/strong> &#8211; Change web.xml &#8211; Go to the web.xml of the examples context and add our servlet (as shown in the image). Below all servlets you also have to add a servlet-mapping (not shown in the image below). This looks like that:<\/p>\n<p><span class=\"Apple-style-span\" style=\"font-family: 'Courier New', Courier, monospace\">&lt;servlet-mapping&gt;<\/span><br \/>\n<span class=\"Apple-style-span\" style=\"font-family: 'Courier New', Courier, monospace\">&lt;servlet-name&gt;test&lt;\/servlet-name&gt;<\/span><br \/>\n<span class=\"Apple-style-span\" style=\"font-family: 'Courier New', Courier, monospace\">&lt;url-pattern&gt;\/demo\/test&lt;\/url-pattern&gt;<\/span><br \/>\n<span class=\"Apple-style-span\" style=\"font-family: 'Courier New', Courier, monospace\">&lt;\/servlet-mapping&gt;<\/span><\/p>\n<div class=\"separator\" style=\"clear: both;text-align: center\"><a href=\"http:\/\/4.bp.blogspot.com\/-knKyQIZ9Txw\/TynFXvbIdtI\/AAAAAAAAAJY\/Z-R-z6MbbAY\/s1600\/step7.png\"><img decoding=\"async\" border=\"0\" height=\"342\" src=\"http:\/\/4.bp.blogspot.com\/-knKyQIZ9Txw\/TynFXvbIdtI\/AAAAAAAAAJY\/Z-R-z6MbbAY\/s400\/step7.png\" width=\"400\" \/><\/a><\/div>\n<p>Hit save and restart tomcat. You should now see your debug output by surfing to <a href=\"http:\/\/localhost:8080\/examples\/demo\/test\">http:\/\/localhost:8080\/examples\/demo\/test<\/a> &#8211; You now can set breakpoints, change the output (thanks to hot code replacement) and do all the other fun stuff you do with other debugging sessions.<\/p>\n<p><strong>Hint<\/strong>: <i>Keeping your JSP\/JSF files as well as your web.xml and other resources already in another project? <\/i>Just create a little ANT script which copies them into the webapps folder of the tomcat &#8211; and you get re-deployment with a single mouse click. Even better (this is what we do): You can modify\/override the ResourceResolver of JSF. Therefore you can simply use the classloader to resolve your .xhtml files. This way, you can keep your Java sources and your JSF sources close to each other. I will cover that in another post &#8211; The fun stuff starts when running multi tenant systems with custom JSF files per tenant. The JSF implementation of Sun\/Oracle has some nice gotchas built-in for that case ;-)<\/p>\n<p><strong><i>Reference: <\/i><\/strong><a href=\"http:\/\/andreas.haufler.info\/2012\/01\/launching-and-debugging-tomcat-from.html\">Launching and Debugging Tomcat from Eclipse without complex plugins<\/a>&nbsp;from our <a href=\"http:\/\/www.javacodegeeks.com\/p\/jcg.html\">JCG partner<\/a><span class=\"Apple-style-span\" style=\"font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif\"><span class=\"Apple-style-span\" style=\"font-size: 14px;line-height: 18px\"><strong>&nbsp;<\/strong><\/span><\/span>Andreas Haufler at the&nbsp;<a href=\"http:\/\/andreas.haufler.info\/\">Andy&#8217;s Software Engineering Corner<\/a>&nbsp;blog.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Modern IDEs like Eclipse provide various Plugins to ease web developement. However, I believe that starting Tomcat as &#8220;normal&#8221; Java application still provides the best debugging experience. Most of the time, this is because these tools launch Tomcat or any other servlet container as external process and then attach a remote debugger on it. While &hellip;<\/p>\n","protected":false},"author":146,"featured_media":110,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[32,29],"class_list":["post-955","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-enterprise-java","tag-apache-tomcat","tag-eclipse"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Launching and Debugging Tomcat from Eclipse without complex plugins - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"Modern IDEs like Eclipse provide various Plugins to ease web developement. However, I believe that starting Tomcat as &quot;normal&quot; Java application still\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Launching and Debugging Tomcat from Eclipse without complex plugins - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"Modern IDEs like Eclipse provide various Plugins to ease web developement. However, I believe that starting Tomcat as &quot;normal&quot; Java application still\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2012-02-02T21:30:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2012-10-21T23:07:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/eclipse-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Andreas Haufler\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andreas Haufler\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html\"},\"author\":{\"name\":\"Andreas Haufler\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/877cbef97bf88bc8c81fafabfe36ce9d\"},\"headline\":\"Launching and Debugging Tomcat from Eclipse without complex plugins\",\"datePublished\":\"2012-02-02T21:30:00+00:00\",\"dateModified\":\"2012-10-21T23:07:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html\"},\"wordCount\":666,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/eclipse-logo.jpg\",\"keywords\":[\"Apache Tomcat\",\"Eclipse\"],\"articleSection\":[\"Enterprise Java\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html\",\"name\":\"Launching and Debugging Tomcat from Eclipse without complex plugins - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/eclipse-logo.jpg\",\"datePublished\":\"2012-02-02T21:30:00+00:00\",\"dateModified\":\"2012-10-21T23:07:11+00:00\",\"description\":\"Modern IDEs like Eclipse provide various Plugins to ease web developement. However, I believe that starting Tomcat as \\\"normal\\\" Java application still\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/eclipse-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/eclipse-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2012\\\/02\\\/launching-and-debugging-tomcat-from.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Enterprise Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\\\/enterprise-java\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Launching and Debugging Tomcat from Eclipse without complex plugins\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/877cbef97bf88bc8c81fafabfe36ce9d\",\"name\":\"Andreas Haufler\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9b91a769938d1bf33fb448fa0e6b7334e2cc122592b89bbe8077a8899ca237a1?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9b91a769938d1bf33fb448fa0e6b7334e2cc122592b89bbe8077a8899ca237a1?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9b91a769938d1bf33fb448fa0e6b7334e2cc122592b89bbe8077a8899ca237a1?s=96&d=mm&r=g\",\"caption\":\"Andreas Haufler\"},\"sameAs\":[\"http:\\\/\\\/andreas.haufler.info\\\/\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/Andreas-Haufler\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Launching and Debugging Tomcat from Eclipse without complex plugins - Java Code Geeks","description":"Modern IDEs like Eclipse provide various Plugins to ease web developement. However, I believe that starting Tomcat as \"normal\" Java application still","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html","og_locale":"en_US","og_type":"article","og_title":"Launching and Debugging Tomcat from Eclipse without complex plugins - Java Code Geeks","og_description":"Modern IDEs like Eclipse provide various Plugins to ease web developement. However, I believe that starting Tomcat as \"normal\" Java application still","og_url":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2012-02-02T21:30:00+00:00","article_modified_time":"2012-10-21T23:07:11+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/eclipse-logo.jpg","type":"image\/jpeg"}],"author":"Andreas Haufler","twitter_card":"summary_large_image","twitter_creator":"@javacodegeeks","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Andreas Haufler","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html"},"author":{"name":"Andreas Haufler","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/877cbef97bf88bc8c81fafabfe36ce9d"},"headline":"Launching and Debugging Tomcat from Eclipse without complex plugins","datePublished":"2012-02-02T21:30:00+00:00","dateModified":"2012-10-21T23:07:11+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html"},"wordCount":666,"commentCount":0,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/eclipse-logo.jpg","keywords":["Apache Tomcat","Eclipse"],"articleSection":["Enterprise Java"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html","url":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html","name":"Launching and Debugging Tomcat from Eclipse without complex plugins - Java Code Geeks","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/eclipse-logo.jpg","datePublished":"2012-02-02T21:30:00+00:00","dateModified":"2012-10-21T23:07:11+00:00","description":"Modern IDEs like Eclipse provide various Plugins to ease web developement. However, I believe that starting Tomcat as \"normal\" Java application still","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/eclipse-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/eclipse-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/2012\/02\/launching-and-debugging-tomcat-from.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Java","item":"https:\/\/www.javacodegeeks.com\/category\/java"},{"@type":"ListItem","position":3,"name":"Enterprise Java","item":"https:\/\/www.javacodegeeks.com\/category\/java\/enterprise-java"},{"@type":"ListItem","position":4,"name":"Launching and Debugging Tomcat from Eclipse without complex plugins"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/877cbef97bf88bc8c81fafabfe36ce9d","name":"Andreas Haufler","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/9b91a769938d1bf33fb448fa0e6b7334e2cc122592b89bbe8077a8899ca237a1?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/9b91a769938d1bf33fb448fa0e6b7334e2cc122592b89bbe8077a8899ca237a1?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9b91a769938d1bf33fb448fa0e6b7334e2cc122592b89bbe8077a8899ca237a1?s=96&d=mm&r=g","caption":"Andreas Haufler"},"sameAs":["http:\/\/andreas.haufler.info\/"],"url":"https:\/\/www.javacodegeeks.com\/author\/Andreas-Haufler"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/955","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/146"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=955"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/955\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/110"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=955"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=955"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=955"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}