Check that your system is not subject to the JRE XP issue.
There was gap in JRE packaging by Msoft..see
http://www.microsoft.com/windowsxp/evaluation/news/jre.mspx
The result is on some installations of XP the JRE has issues.

as you explicitely path
C:\CSI\eclipse_workspaces\CSI\csi_build\src\tools\jdk\jdk1.5.0_04\bin;
 in one instance you are OK.
however you might look closer at the JRE as packaged with XP.

-----Original Message-----
From: Matthew Wheaton [mailto:[EMAIL PROTECTED] 
Sent: Friday, December 02, 2005 1:09 PM
To: Maven Users List
Subject: Re: M2 : Having problems with a javac on a very simple build of
my first M2 project.


Hi Bill,

I have nothing else, in fact, in my system environment there is no
JAVA_HOME at all, and absolutely no java references in the system path.

Matthew Wheaton

On 12/2/05, Bill Siggelkow <[EMAIL PROTECTED]> wrote:
>
> Are you sure that there is not another JAVA_HOME environment variable 
> defined; maybe like a system-level one? Or maybe something else weird 
> in your PATH variable?
>
> -Bill Siggelkow
>
> On Dec 2, 2005, at 9:53 AM, Matthew Wheaton wrote:
>
> > A little background first.
> > I've been using Maven even before the 1.0 release, and have been 
> > very happy with it. I've created very complex builds and have a very

> > good working knowledge of Maven 1.x. The structure I describe below,

> > is precisely how
> > I've successfully built projects with Maven 1.x countless times.
> >
> > I'm starting a whole new project, and would like to see if Maven 2 
> > is going to be something I want to use.
> >
> > Now on to my problem. Maven 2 cannot find the Javac Compiler that I 
> > believe I pointed it to.
> >
> > I'm running the latest Maven download, version 2.0, on Windows XP
> >
> > I've created two project modules :
> >
> > csi_build
> > csi_common
> >
> > csi_common  contains my first simple project I'd like to build with 
> > Maven 2
> >
> > csi_build  contains my Maven 2 binaries, AND a number of JDKs I use 
> > for builds. I store my JDKs in version control (Subversion), as some
> > deployments
> > require different versions of the JDK and because I want anyone to
> > be able
> > to pull down the latest code from the repository and immediately be
> > able to
> > execute a build, even if they don't have the JDK installed.
> >
> > I simply go to the csi_common directory and execute the following 
> > build.batfile ===============================================
> > echo off
> > set
> > JAVA_HOME=C:\CSI\eclipse_workspaces\CSI\csi_build\src\tools\jdk
> > \jdk1.5.0_04
> > set
> > MAVEN_HOME=C:\CSI\eclipse_workspaces\CSI\csi_build\src\tools\maven
> > \maven-2.0
> > set PATH=%JAVA_HOME%\bin;%MAVEN_HOME%\bin;%PATH%
> > echo PATH=%PATH%
> > mvn package -e
> > ===============================================
> >
> > Here's my simple pom.xml for csi_common 
> > ===============================================
> > <project xmlns="http://maven.apache.org/POM/4.0.0"; xmlns:xsi=" 
> > http://www.w3.org/2001/XMLSchema-instance";
> >   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> > http://maven.apache.org/maven-v4_0_0.xsd";>
> >   <modelVersion>4.0.0</modelVersion>
> >   <groupId>com.csi.common</groupId>
> >   <artifactId>csi_common</artifactId>
> >   <packaging>jar</packaging>
> >   <version>1.0-SNAPSHOT</version>
> >   <name>Maven Quick Start Archetype</name>
> >   <url>http://maven.apache.org</url>
> >   <build>
> >       <sourceDirectory>src/java</sourceDirectory>
> >   </build>
> >   <dependencies>
> >     <dependency>
> >       <groupId>junit</groupId>
> >       <artifactId>junit</artifactId>
> >       <version>3.8.1</version>
> >       <scope>test</scope>
> >     </dependency>
> >   </dependencies>
> > </project>
> > ===============================================
> >
> > The output complains "Unable to locate the Javac Compiler in: 
> > C:\jre1.5.0_04\..\lib\tools.jar" Here's the output:
> > ===============================================
> > C:\CSI\eclipse_workspaces\CSI\csi_common>echo off
> > PATH=C:\CSI\eclipse_workspaces\CSI\csi_build\src\tools\jdk
> > \jdk1.5.0_04\bin;
> >
C:\CSI\eclipse_workspaces\CSI\csi_build\src\tools\maven\maven-2.0\bin;
> > C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
> > + Error stacktraces are turned on.
> > [INFO] Scanning for projects...
> > [INFO]
> > --------------------------------------------------------------------
> > --
> > ------
> > [INFO] Building Maven Quick Start Archetype
> > [INFO]    task-segment: [package]
> > [INFO]
> >
----------------------------------------------------------------------
> > ------
> > [INFO] [resources:resources]
> > [INFO] Using default encoding to copy filtered resources.
> > [INFO] [compiler:compile]
> > Compiling 4 source files to
> > C:\CSI\eclipse_workspaces\CSI\csi_common\target\classes
> > [INFO]
> >
----------------------------------------------------------------------
> > ------
> > [ERROR] BUILD FAILURE
> > [INFO]
> >
----------------------------------------------------------------------
> > ------
> > [INFO] Compilation failure
> >
> > Unable to locate the Javac Compiler in:
> >   C:\jre1.5.0_04\..\lib\tools.jar
> > Please ensure you are using JDK 1.4 or above and
> > not a JRE (the com.sun.tools.javac.Main class is required). In most 
> > cases you can change the location of your Java installation by 
> > setting the JAVA_HOME environment variable.
> >
> > [INFO]
> > --------------------------------------------------------------------
> > --
> > ------
> > [INFO] Trace
> > org.apache.maven.BuildFailureException: Compilation failure
> >     at
> > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(
> > DefaultLifecycleExecutor.java:540)
> >     at
> >
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLif
> > ecycle
> > (DefaultLifecycleExecutor.java:469)
> >     at
> > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(
> > DefaultLifecycleExecutor.java:448)
> >     at
> >
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHand
> > leFailures
> > (DefaultLifecycleExecutor.java:301)
> >     at
> >
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegment
> > s(
> > DefaultLifecycleExecutor.java:268)
> >     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(
> > DefaultLifecycleExecutor.java:137)
> >     at
org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:316)
> >     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:113)
> >     at org.apache.maven.cli.MavenCli.main(MavenCli.java:249)
> >     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> >     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)
> >     at java.lang.reflect.Method.invoke(Unknown Source)
> >     at org.codehaus.classworlds.Launcher.launchEnhanced
> > (Launcher.java:315)
> >     at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> >     at org.codehaus.classworlds.Launcher.mainWithExitCode
> > (Launcher.java:430)
> >     at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> > Caused by: org.apache.maven.plugin.CompilationFailureException:
> > Compilation
> > failure
> >     at org.apache.maven.plugin.AbstractCompilerMojo.execute(
> > AbstractCompilerMojo.java:429)
> >     at org.apache.maven.plugin.CompilerMojo.execute
> > (CompilerMojo.java:110)
> >     at org.apache.maven.plugin.DefaultPluginManager.executeMojo(
> > DefaultPluginManager.java:399)
> >     at
> > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(
> > DefaultLifecycleExecutor.java:519)
> >     ... 16 more
> > [INFO]
> >
----------------------------------------------------------------------
> > ------
> > [INFO] Total time: 1 second
> > [INFO] Finished at: Fri Dec 02 08:50:54 CST 2005
> > [INFO] Final Memory: 3M/6M
> > [INFO]
> >
----------------------------------------------------------------------
> > ------
> > ===============================================
> >
> > Why in the world is the Maven code looking for anything in C: 
> > \jre1.5.0_04 ???
> >
> > if I issue "set JAVA_HOME" from the command line, I get: 
> > ===============================================
> > C:\CSI\eclipse_workspaces\CSI\csi_common>set JAVA_HOME 
> > JAVA_HOME=C:\CSI\eclipse_workspaces\CSI\csi_build\src\tools\jdk
> > \jdk1.5.0_04 ===============================================
> >
> > and here's my path: ===============================================
> > C:\CSI\eclipse_workspaces\CSI\csi_common>set PATH
> > Path=C:\CSI\eclipse_workspaces\CSI\csi_build\src\tools\jdk
> > \jdk1.5.0_04\bin;
> >
C:\CSI\eclipse_workspaces\CSI\csi_build\src\tools\maven\maven-2.0\bin;
> > C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
> > ===============================================
> >
> > Also, if I issue "javac" from the command line, I get: 
> > ===============================================
> > C:\CSI\eclipse_workspaces\CSI\csi_common>javac
> > Usage: javac <options> <source files>
> > where possible options include:
> >   -g                         Generate all debugging info
> >   -g:none                    Generate no debugging info
> >   -g:{lines,vars,source}     Generate only some debugging info
> >   -nowarn                    Generate no warnings
> >   -verbose                   Output messages about what the
> > compiler is
> > doing
> >   -deprecation               Output source locations where
> > deprecated APIs
> > are used
> >   -classpath <path>          Specify where to find user class files
> >   -cp <path>                 Specify where to find user class files
> >   -sourcepath <path>         Specify where to find input source
files
> >   -bootclasspath <path>      Override location of bootstrap class
> > files
> >   -extdirs <dirs>            Override location of installed
extensions
> >   -endorseddirs <dirs>       Override location of endorsed
> > standards path
> >   -d <directory>             Specify where to place generated class
> > files
> >   -encoding <encoding>       Specify character encoding used by
> > source files
> >   -source <release>          Provide source compatibility with
> > specified
> > release
> >   -target <release>          Generate class files for specific VM
> > version
> >   -version                   Version information
> >   -help                      Print a synopsis of standard options
> >   -X                         Print a synopsis of nonstandard options
> >   -J<flag>                   Pass <flag> directly to the runtime
> > system
> > ===============================================
> >
> > So, I KNOW javac is in the path.
> >
> > Can anyone shed some light on what I may be doing wrong?
> >
> > Sincerely,
> > Matthew Wheaton
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to