<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <!-- Package Description information to be picked up by www.eclipse.org/packages -->
  <!-- PackageName is the title of your package 
       maintainer is the project or persons that are maintaining the package
       iconurl is the fully qualified URL to the icon you wish to use on the site (48x48)
       bugzillaComponentID is used to gather bugzilla information about your package.  This should be given to you after provisioning of the package is finished
       testPlan is the fully qualified URL to the test plan for this package
   -->
  <packageMetaData
   packageName="Eclipse IDE for Java Developers"
   maintainer="Eclipse Packaging Project"
   iconurl="http://www.eclipse.org/downloads/images/java.png"
   bugzillaComponentId="java-package"
   testPlan="http://www.eclipse.org/epp/testplan.php" >
    <!-- Description is wrapped in CDATA tags to allow you to insert HTML code if necessary -->
     <description><![CDATA[The essential tools for any Java developer, including a Java IDE, a Git client, XML Editor, Mylyn, Maven integration and WindowBuilder]]></description>
    <!-- packageTesters is a list of the people that are testing the package -->
     <packageTesters>
      <tester>Andreas Sewe</tester>
      <tester>Tomasz Zarna</tester>
    </packageTesters>
  </packageMetaData>
  <MoreInfo>
  <NewAndNoteworthy
    url="https://www.eclipse.org/eclipse/news/4.5/"
    project="Eclipse Platform" />
  <NewAndNoteworthy
    url="https://www.eclipse.org/mylyn/new/"
    project="Eclipse Mylyn" />
  <NewAndNoteworthy
    url="https://wiki.eclipse.org/EGit/New_and_Noteworthy/4.0"
    project="Eclipse EGit" />
  <NewAndNoteworthy
    url="https://www.eclipse.org/recommenders/manual/"
    project="Eclipse Code Recommenders" />  
  </MoreInfo>


	<!-- version, the RCP version to build. This is used to determine the file 
    name of the root file archives -->
  <rcp version="4.5.2" />

	<!-- name, the name of the product, used in naming the created files. -->
	<product name="eclipse-java-mars-2" />

</configuration>
