Raible's Wiki

Raible Designs
Wiki Home
News
Recent Changes

AppFuse

Homepage
  - Korean
  - Chinese
  - Italian
  - Japanese

QuickStart Guide
  - Chinese
  - French
  - German
  - Italian
  - Korean
  - Portuguese
  - Spanish
  - Japanese

User Guide
  - Korean
  - Chinese

Tutorials
  - Chinese
  - German
  - Italian
  - Korean
  - Portuguese
  - Spanish

FAQ
  - Korean

Latest Downloads

Other Applications

Struts Resume
Security Example
Struts Menu

Set your name in
UserPreferences


Referenced by
AppFuseDebug
AppFuseQuickStart
AppFuseQuickStart_cn
AppFuseQuickStart_fr
AppFuseQuickStart_it
AppFuseQuickStart_jp
AppFuseQuickStart_zh
AppFuseSupport
Articles
Articles_cn
...and 5 more




JSPWiki v2.2.33

[RSS]


Hide Menu

DevelopmentEnvironment


Difference between version 34 and version 2:

At line 1 changed 6 lines.
!!Download
# Download the latest JDK (J2SE SDK) from [http://java.sun.com]. As of 11/6/2003, this is [1.4.2|http://java.sun.com/j2se/1.4.2/download.html]. Choose the __SDK__ link from under "Download J2SE v 1.4.2_02" for your respective platform.
# Download the [latest J2EE Bundle|http://java.sun.com/j2ee/download.html#sdk] from [http://java.sun.com]. As of 11/6/2003, this is [1.4 Beta 2|http://java.sun.com/j2ee/1.4/download-beta2.html]. This will be used for compiling AppFuse or Struts-Resume (XDoclet requires javax.ejb.* and javax.servlet.* in the classpath when building).
# Download the [latest Tomcat release|http://jakarta.apache.org/site/binindex.cgi] from [http://jakarta.apache.org/tomcat]. At the time of this writing, it's [4.1.29|http://www.oss.redundant.com/pub/apache/jakarta/tomcat-4/v4.1.29/]. __DON'T__ get the LE version or you'll have to add DBCP (database connection pool) and JavaMail (for e-mail) JARs.
# Download the [latest Ant release|http://ant.apache.org/bindownload.cgi] from [http://ant.apache.org]. Currently, this is 1.5.4.
# Download the [latest MySQL release|http://www.mysql.com/downloads/mysql-4.0.html] from [http://www.mysql.com]. Currently, this is 4.0.16.
This page describes how to setup your development environment to compile/deploy [AppFuse] or [StrutsResume] from the command line. After setting this up, you might want to checkout [HowTo Run Ant in Eclipse|AppFuseEclipse]. This is how I currently have things setup and what I advise clients to use when we use AppFuse as a baseline for webapp development.
At line 3 added 12 lines.
!Table of Contents
* [1] Download - links to download the JDK, J2EE, Tomcat, Ant and MySQL
* [2] Install - detailed instructions on where to extract/install all of the above packages
* [3] Configure - how to configure your environment variables
* [4] Additional Tips - other tools I recommend using
!!Download [#1]
# Download the latest JDK (J2SE SDK) from [http://java.sun.com]. As of 07/12/2005, this is [1.4.2_08|http://javashoplm.sun.com/ECom/docs/Welcome.jsp?StoreId=22&PartDetailId=j2sdk-1.4.2_08-oth-JPR&SiteId=JSC&TransactionId=noreg]. AppFuse should work with 1.5 if you'd like to use that. Here's [my experience|http://raibledesigns.com/page/rd?anchor=playing_with_jdk_5_0]. Note that Cactus has been removed from AppFuse in 1.6 and Cargo (used for testing JSPs) doesn't work with Tomcat 5.5.x yet.
# Download the [latest Tomcat release|http://jakarta.apache.org/site/binindex.cgi] from [http://jakarta.apache.org/tomcat]. At the time of this writing, it's [5.0.28|http://www.apache.org/dist/jakarta/tomcat-5/v5.0.28/]. __DON'T__ get the LE version or you'll have to add DBCP (database connection pool) and JavaMail (for e-mail) JARs.
# Download the [latest Ant release|http://ant.apache.org/bindownload.cgi] from [http://ant.apache.org]. AppFuse 1.6+ requires 1.6.2 or greater.
# Download the [latest MySQL release|http://dev.mysql.com/downloads/mysql/4.0.html] from [http://www.mysql.com]. Currently, this is 4.0.21.
At line 10 changed 1 line.
!!Install
!!Install [#2]
At line 15 changed 2 lines.
# Install the J2SE SDK (a.k.a. JDK) and J2EE bundle in the SDKs directory - keeping the directory names intact.
# Install Tomcat in the Tools directory - I usually name the install directory "jakarta-tomcat-x" where x is the current version (i.e. 4.1.29).
# Install the J2SE SDK (a.k.a. JDK) in the SDKs directory - keeping the directory names intact.
# Install Tomcat in the Tools directory - I usually name the install directory "jakarta-tomcat-x" where x is the current version (i.e. 5.0.28).
At line 26 added 1 line.
# Create a "Source" directory on your hard drive (this is where we'll put all the source code for our projects). On *nix, I usually create a "dev" folder in my home directory.
At line 22 changed 7 lines.
SDKs -\\
;: - j2eesdk-1.4-b2
;: - j2sdk-1.4.2_02
Tools - \\
;: - apache-ant-1.5.4
;: - jakarta-tomcat-4.1.29
;: - mysql
{{{SDKs -
- j2sdk-1.4.2_05
Tools -
- apache-ant-1.6.2
- jakarta-tomcat-5.0.28
- mysql
Source}}}
Now we'll configure all these tools so that your Operating System knows they're installed.
!!Configure [#3]
I'll only show a Windows example and I'll assume the *nix folks are smart enough to figure it out for their system.
# To set Environment Variables in Windows, either go to Control Panel -> System or right-click My Computer -> Properties.
# Click on the __Advanced__ Tab and then click the __Environment Variables__ button.
# Put focus on the second box (System Variables) by clicking on one of the existing values.
# Enter the following variables:
** HOME = c:\Source
** SDKS_HOME = c:\SDKs
** TOOLS_HOME = c:\Tools
** JAVA_HOME = %SDKS_HOME%\j2sdk-1.4.2_05
** ANT_HOME = %TOOLS_HOME%\apache-ant-1.6.2
** CATALINA_HOME = %TOOLS_HOME%\jakarta-tomcat-5.0.28
** MYSQL_HOME = %TOOLS_HOME%\mysql
** Append to the PATH variable: %JAVA_HOME%\bin;%ANT_HOME%\bin;%CATALINA_HOME%\bin;%MYSQL_HOME%\bin
You should now be able to open a command prompt and type "java -version", "ant -version" or "mysql" and not get errors.
!!Additional Tips [#4]
* I use [Cygwin|http://www.cygwin.com] on Windows for running Ant and doing all command line things. I install it in %TOOLS_HOME%\cygwin. In my %HOME%\.profile file, I have the following items that might be useful:
<pre style="margin-left: 40px">alias ls="ls -CF --color"
alias ll='ls -la'
alias tstart=$CATALINA_HOME/bin/startup.bat
alias tstop=$CATALINA_HOME/bin/shutdown.bat</pre>
* I use [Eclipse|http://www.eclipse.org] on Windows for editing .java files. I install it in %TOOLS_HOME%\eclipse. I still use Ant to build and deploy, but the CVS versions of AppFuse and StrutsResume does contain the .classpath and .project files for Eclipse. Additionally, AppFuse has project files for [Intellij's IDEA|http://www.intellij.com] (version 4.5+). To see how you can run Ant in Eclipse, check out my [AppFuse with Eclipse HowTo|AppFuseEclipse].
If you're starting work at a new client, I also recommend you do the following to help your development process become more efficient. Most of my clients in the last couple years have not had these in place, that's why I recommend them here.
# Setup a source control system. I prefer <a href="http://cvshome.org">CVS</a> because I'm most familiar with it. A nice addon is [CVS Spam|http://www.badgers-in-foil.co.uk/projects/cvsspam/] for HTML-formatted check-in notifications.
# Setup a bug tracking system. Popular (free) choices are [Bugzilla|http://www.bugzilla.org/] and [Scarab|http://scarab.tigris.org/]. The best one I've seen is [JIRA|http://www.atlassian.com/software/jira/] ([demo|http://jira.atlassian.com/secure/Dashboard.jspa]), but I've yet to convince a client to shell out the $800 for it.
# Setup a Wiki. My favorite is [JSPWiki|http://www.jspwiki.org] - which is what this site uses. You can also [download this template|http://www.raibledesigns.com/wiki/templates/redman.tar.gz] if you like.
# Setup a development box to host the source control system, the bug tracking system, and a wiki. Install Tomcat on this box and [Anthill|http://www.urbancode.com/projects/anthill/default.jsp] for automated testing (I run both AppFuse and Struts-Resume on Anthill at home).
# (optional) Install [Roller|http://rollerweblogger.org/page/project] and use it to report your daily status and issues. This will allow your client (or supervisor) to track your progress.

Back to DevelopmentEnvironment, or to the Page History.