[
http://nagoya.apache.org/jira/browse/JAMES-333?page=comments#action_55164 ]
Brill Pappin commented on JAMES-333:
------------------------------------
As promised:
bash-2.05b# java -version
java version "1.4.2-p6"
Java(TM) 2 Runtime Environment, Standard Edition (build
1.4.2-p6-brill_26_oct_2004_22_58)
Java HotSpot(TM) Client VM (build 1.4.2-p6-brill_26_oct_2004_22_58, mixed mode)
-bash-2.05b$ env
SHELL=/usr/local/bin/bash
ANT_HOME=/usr/local/ant
USER=brill
MAVEN_HOME=/usr/local/maven
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/home/brill/bin:/usr/local/java/bin:/usr/local/ant/bin:/usr/local/maven/bin
PWD=/home/brill/workspace
JAVA_HOME=/usr/local/java
HOME=/home/brill
- Notice not "CLASSPATH" elements in the env.
bash-2.05b# java -version
java version "1.4.2-p6"
Java(TM) 2 Runtime Environment, Standard Edition (build
1.4.2-p6-brill_26_oct_2004_22_58)
Java HotSpot(TM) Client VM (build 1.4.2-p6-brill_26_oct_2004_22_58, mixed mode)
cvs -d :pserver:[EMAIL PROTECTED]:/home/cvspublic login
cvs -d :pserver:[EMAIL PROTECTED]:/home/cvspublic co james-server
cd james-server/
ant
- Fix build errors regarding mail api.
-- Add activation.jar to lib directory
-- Add mail-1.3.1.jar to lib directory
ant
- Note: [echo] JDBC v3 in classpath - making code JDBC 3.0 compliant
> [...]
> compile-main:
> [...]
> [javac] 24 errors
> [javac] 9 warnings
- Ok, so now we've got a failed build right off the batt. Let's investigate.
- Looks like most of them are related to bouncycastle libs, so let's make sure
we have them.
- They exist in the lib dir, but are not included in the build? WTF? Let's look
at the build.xml
- They are not listed in include.properties with all the rest of the libs.
-- Add to include.properties
-- bcmail.jar=${lib.dir}/bcmail-jdk13-124.jar
-- bcprov.jar=${lib.dir}/bcprov-jdk13-124.jar
-- jce.jar=${lib.dir}/jce-jdk13-124.jar
- Add to build.xml
-- <pathelement location="${bcmail.jar}"/>
-- <pathelement location="${bcprov.jar}"/>
-- <pathelement location="${jce.jar}"/>
ant
> [...]
> [javac] 2 errors
> [javac] 9 warnings
- Ok, ignore the warnings, lets check the errors
-- [javac]
/usr/home/brill/workspace/james-server/src/java/org/apache/james/core/AbstractJamesService.java:429:
cannot resolve symbol
-- [javac] symbol : method connect
(java.lang.String,java.net.ServerSocket,org.apache.james.core.AbstractJamesService,org.apache.excalibur.thread.ThreadPool)
-- [javac] location: interface org.apache.james.services.JamesConnectionManager
-- [javac] connectionManager.connect(
--
-- [javac]
/usr/home/brill/workspace/james-server/src/java/org/apache/james/util/connection/SimpleConnectionManager.java:40:
org.apache.james.util.connection.SimpleConnectionManager is not abstract and
does not override abstract method
connect(java.lang.String,java.net.ServerSocket,org.apache.avalon.cornerstone.services.connection.ConnectionHandlerFactory,org.apache.avalon.excalibur.thread.ThreadPool)
in org.apache.avalon.cornerstone.services.connection.ConnectionManager
-- [javac] public class SimpleConnectionManager
- Ok, those two look related, the source is broken, lets check the source.
-- Hmm... problem originates in
org.apache.james.services.JamesConnectionManager which doesn't include the
named method.
-- it looks like the second error would be fixed by fixing the first. Someone
refactored and committed to HEAD without running the tests...
-- Ok, lets fix this. The test will show us what should happen for this code.
--- Oh, oh... no test for
org.apache.james.util.connection.SimpleConnectionManager!
- Now there are several choices, among the most likely; attempt to add the
missing method blindly with no idea if your going to break this runtime code.
- Add a ticket for the project expressing your disappointment regarding the
state of the source tree in the hopes that someone will take it as an
opportunity for improving things.
> Build Broken in HEAD revision
> -----------------------------
>
> Key: JAMES-333
> URL: http://nagoya.apache.org/jira/browse/JAMES-333
> Project: James
> Type: Improvement
> Environment: Windows/FreeBSD, JDK 1.4.2
> Reporter: Brill Pappin
>
> The developers of James have done a wonderful job with the concept of James
> up to this point although have been a little slow in the development process.
> However, I could not wait for the fixes to come in and so decided to tackle a
> few of the more critical problems myself... in trying to fix the large number
> of bugs in James I've found, and trying to test the IMAP implementation, I
> checked out the HEAD revision and attempted to build. Once I'd solved the
> dependency mess, I found that the code was actually broken in relation to the
> com.apache.james.util.connection.* classes and their super classes.
> I also found very little or no unit tests, so I could not determine what part
> of the code exactly was broken (or what it should do).
> The code base is pretty much a mess as far as I can tell but I can suggest a
> few things that would help keep this project on track: Use Agile, TDD
> processes in your development. Use Maven for a build system.
> I am willing to port the project to a Maven build if requested to do so.
> I would also like to see some unit test for this code.
> Yes, this ticket is pretty harsh, but as experienced developers, I expect
> better.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]