<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="../../../../../../default_style.css" type="text/css">
<link rel="stylesheet" href="../../../../../../webtools/wtp.css" type="text/css">
<title>test plan: wtp project explorer.</title>
</head>
<body>
<table width="100%" cellspacing="5" cellpadding="2" border="0">
<tbody>
<tr>
<td width="60%" align="left"><font class="indextop">wst common</font>
<br>
<font class="indexsub">test plan: wtp project explorer.</font></td><td width="40%"><img width="120" hspace="50" height="86" align="middle" src="../../../../../../images/Idea.jpg"></td>
</tr>
</tbody>
</table>
<table width="100%" cellspacing="5" cellpadding="2" border="0">
<col width="16">
<col width="*">
<tbody>
<tr>
<td valign="top" bgcolor="#0080c0" align="left" colspan="2"><b><font face="Arial,Helvetica" color="#ffffff">Creating Java elements and simple resources</font></b></td>
</tr>
<tr>
<td valign="top" align="right"><img width="16" height="16" border="0" src="../../../../../../images/Adarrow.gif"></td><td>Create a Java project by right clicking within the WTP Project 
		Explorer and selecting "New &gt; Project". When the wizard dialog presents itself,
		select "Java" and then click "Next". On the "New Java Project" dialog, select 
		the option to create separate source and output folders.
		</td>
</tr>
<tr>
<td valign="top" align="right">&nbsp;</td><td valign="top">
<table cellspacing="10" cellpadding="10">
			
<tr>
				
<td>
				
<p>
<img src="./images/new_project_right_click_menu.jpg"></p>
				
</td> 
			
</tr> 
			
<tr>
				
<td>
				
<p>
<i>Figure 1.1: Right click on the open space in the WTP
				Project Explorer viewer and select "New &gt; Project"</i>
</p>
				
</td>
			
</tr>
			
<tr>
				
<td>
				
<p>
<img src="./images/new_project_wizard.JPG"></p>
				
</td> 
			
</tr> 
			
<tr>
				
<td>
				
<p>
<i>Figure 1.2: Select "Java Project" in the "New" 
				dialog and click "Next"</i>
</p>
				
</td>
			
</tr>
			
<tr>
				
<td>
				
<p>
<img src="./images/new_java_project_wiizard_w_settings.jpg"></p>
				
</td> 
			
</tr>
			
<tr>
				
<td>
				
<p>
<i>Figure 1.3: Enter "Java1" as the project name and select the 
				option to create separate source and output folders</i>
</p>
				
</td>
			
</tr>
			
<tr>
				
<td>
				
<p>
<img src="./images/confirm_perspective_switch.jpg"></p>
				
</td> 
			
</tr>
			
<tr>
				
<td>
				
<p>
<i>Figure 1.4: Select "No" when the "Confirm Perspective Switch" 
				question dialog presents itself</i>
</p>
				
</td>
			
</tr>
			
<tr>
				
<td>
				
<p>
<i>Figure 1: Create a new Java Project.</i>
</p>
				
</td>
			
</tr>
		
</table>
</td>
</tr>
<tr>
<td valign="top" align="right"><img width="16" height="16" border="0" src="../../../../../../images/Adarrow.gif"></td><td>Once you have created your Java Project, create a Java class and a simple 
		resource. </td>
</tr>
<tr>
<td valign="top" align="right">&nbsp;</td><td valign="top">
<table cellspacing="10" cellpadding="10">
			
<tr>
				
<td>
				
<p>
<img src="./images/new_java_class_right_click_menu.jpg"></p>
				
</td> 
			
</tr>  
			
<tr>
				
<td>
				
<p>
<i>Figure 2.1: Right click on the Java project created 
					earlier and select "New &gt; Class"</i>
</p>
				
</td>
			
</tr>
			
<tr>
				
<td>
				
<p>
<img src="./images/new_java_class_wizard.jpg"></p>
				
</td> 
			
</tr>  
			
<tr>
				
<td>
				
<p>
<i>Figure 2.2: Enter "test.pakg" as the Java package and 
					"TestClass" as the name of the class and click "Finish"</i>
</p>
				
</td>
			
</tr>
			
<tr>
				
<td>
				
<p>
<i>Figure 2: Create a new Java class.</i>
</p>
				
</td>
			
</tr>
		
</table>
</td>
</tr>
<tr>
<td valign="top" align="right"><img width="16" height="16" border="0" src="../../../../../../images/Adarrow.gif"></td><td>Now create a simple file.</td>
</tr>
<tr>
<td valign="top" align="right">&nbsp;</td><td valign="top">
<table cellspacing="10" cellpadding="10">
			
<tr>
				
<td>
				
<p>
<img src="./images/new_other_wizard_right_click_menu.jpg"></p>
				
</td> 
			
</tr> 
			
<tr>
				
<td>
				
<p>
<i>Figure 3.1: Right click on the Java project created 
					earlier and select "New &gt; Other..."</i>
</p>
				
</td> 
			
</tr> 
			
<tr>
				
<td>
				
<p>
<img src="./images/new_file_wizard.jpg"></p>
				
</td> 
			
</tr>  
			
<tr>
				
<td>
				
<p>
<i>Figure 3.2: Select "File" in the "New" dialog and click "Next"</i>
</p>
				
</td> 
			
</tr> 

			
<tr>
				
<td>
				
<p>
<img src="./images/new_file_wizard_w_settings.jpg"></p>
				
</td> 
			
</tr>
				
			
<tr>
				
<td>
				
<p>
<i>Figure 3.3: Enter "TestFile.txt" as the name of the file and click "Finish"</i>
</p>
				
</td> 
			
</tr> 
			  
			
<tr>
				
<td>
				
<p>
<i>Figure 3: Create a new file. Name the file "TestFile.txt" when creating the file</i>
</p>
				
</td>
			
</tr>
		
</table>
</td>
</tr>
<tr>
<td valign="top" align="right">&nbsp;</td><td valign="top">
<p>Return to <A HREF="px_overview.html">overview</A>.</p>
</td>
</tr>
</tbody>
</table>
</body>
</html>
