I think that there is some confusion propagating from possible missing
information in the original query, apparent assumptions made to fill in the
missing information, and the odd wildcard semantics of DOS/Windows.  The
original query provides the following information (copy/paste):

> When I execute the command: C:\Jess51\jess> javac -d . jess/*.java
> jess/awt/*.java jess/factory/*.java
> > appears the following message of error: 
> > error: cannot read: jess/examples/*.java
> > 1 error

My first reaction is that the Java compiler should not care about
jess/examples/*.java in the command as quoted, because that directory is not
listed in the command.  So, we must assume a transcription error.  We would
not be getting such an error message (I'm fairly certain) if the directory
is not listed in the command line.  If we assume that the error message is
transcribed correctly, then the missing parameter on the command line is
"jess/examples/*.java".  The error message is stating the truth--there are
no Java files in that directory.  

Sun's Java compiler allows more than one wildcard per command line, but the
rules for wildcards in individual parameters are fuzzier in Windows common
usage than in Unix. Without going into the arcane details, you can do the
complete compile from the Win95/98/NT/2000 command prompt in one shot with
the following command (just tested it--no errors):

javac jess/*.java jess/awt/*.java jess/factory/*.java
jess/examples/pumps/*.java jess/examples/simple/*.java
jess/examples/xfer/*.java

This form of the command works with all versions of Sun Java compiler that I
am familiar with.  It also works with Java command line compilers from other
vendors.  Note that only the filename part of the parameter has a wildcard.
I would also use the above command form confidently on any Unix variant I
might be working with.  

It is possible to assume that both the command and the error are transcribed
incorrectly.  This is reasonable, because it is allowable in Unix-like
shells to use wildcards at any point in a pathname, more or less. So, to
compile all java files in all immediate subdirectories of the jess/examples
directory, you may issue the command

        javac -d . jess/examples/*/*.java

as shown in the message below (but, to be redunant, NOT in Windows).

I agree that it is a good idea for the manual to show the simplest steps
known to work everywhere.  Those who are confident with their particular
Java environment should be able to extrapolate the required information to
compile in as few keystrokes as possible.

Cheers!
Gregg

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]
Sent: Tuesday, May 01, 2001 11:08 AM
To: Bill Wheeler
Cc: '[EMAIL PROTECTED]'; Helio Correa Filho;
[EMAIL PROTECTED]
Subject: Re: JESS: Doubts above setup


Hi Bill,

Are you using a "real" shell, or the one that comes with Windows
(i.e., CMD.EXE or COMMAND.COM)? The real problem is that Windows
shells don't expand '*'s, like UNIX shells do; they leave it up to the
application program to do. Unfortunately, the last time I checked,
Sun's Win32 javac would expand no more than one '*' on a line, and it
wouldn't expand '*'s into directories. So if you typed in the line
below to a normal Windows shell, you'd get an error. Furthermore, this
wouldn't work either

        javac -d . jess/examples/*/*.java

On the other hand, if you're using a port of a UNIX shell (cygwin's
bash, for example) on Windows then the shell expands the wildcards,
and javac just sees a long list of file names; then both of these
command lines work. Anyway, the safest recommendation is just to tell
people to type the simplest commands known to work everywhere.

I think Bill Wheeler wrote:
[Charset iso-8859-1 unsupported, filtering to ASCII...]
> Actually, from the c:\Jess51 directory, the 
> 
>       javac -d . jess/*.java jess/awt/*.java jess/factory/*.java
> 
> command always works for me.  Never had any problems so long as I was in
the
> lower Jess directory.
>   
> 
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]
> Sent: Monday, April 30, 2001 9:10 PM
> To: Helio Correa Filho
> Cc: [EMAIL PROTECTED]
> Subject: Re: JESS: Doubts above setup
> 
> 
> The Jess manual is wrong about what you can type to compile Jess on
> Windows with the JDK. Due to the way that javac and the Windows
> command shell are implemented, you can effectively only use one
> asterisk per command line, so you have to type something like
> 
>   javac -d . jess\*.java
>   javac -d . jess\awt\*.java
>   javac -d . jess\factory\*.java
>   javac -d . jess\examples\pumps\*.java
>   javac -d . jess\examples\simple\*.java
>   javac -d . jess\examples\xfer\*.java
> 
> to compile all of Jess. I've corrected this in later versions of the
> Jess manual. 
> 
> I think Helio Correa Filho wrote:
> [Charset iso-8859-1 unsupported, filtering to ASCII...]
> > Hi,
> > I'm using JESS 5.1, jdk1.3.0_02 with Windows NT4.0 Operational System.
> When I execute the command: C:\Jess51\jess> javac -d . jess/*.java
> jess/awt/*.java jess/factory/*.java
> > appears the following message of error: 
> > error: cannot read: jess/examples/*.java
> > 1 error
> >  
> > installation: C:\jdk1.3.0_02\bin \... and C:\Jess51\jess, My path is: 
> > classpath C:\Jess51 , see figure below.
> > 
> > 
> > could be something with the classpath? 
> > 
> > thanks...
> > Helio.
> 
> [image/jpeg is not supported, skipping...]
> 
> 
> 
> ---------------------------------------------------------
> Ernest Friedman-Hill  
> Distributed Systems Research        Phone: (925) 294-2154
> Sandia National Labs                FAX:   (925) 294-2234
> Org. 8920, MS 9012                  [EMAIL PROTECTED]
> PO Box 969                  http://herzberg.ca.sandia.gov
> Livermore, CA 94550
> 
> ---------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
> in the BODY of a message to [EMAIL PROTECTED], NOT to the
> list (use your own address!) List problems? Notify
> [EMAIL PROTECTED]
> ---------------------------------------------------------------------
> 
> ---------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
> in the BODY of a message to [EMAIL PROTECTED], NOT to the
> list (use your own address!) List problems? Notify
> [EMAIL PROTECTED]
> ---------------------------------------------------------------------



---------------------------------------------------------
Ernest Friedman-Hill  
Distributed Systems Research        Phone: (925) 294-2154
Sandia National Labs                FAX:   (925) 294-2234
Org. 8920, MS 9012                  [EMAIL PROTECTED]
PO Box 969                  http://herzberg.ca.sandia.gov
Livermore, CA 94550

---------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the
list (use your own address!) List problems? Notify
[EMAIL PROTECTED]
---------------------------------------------------------------------

---------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the
list (use your own address!) List problems? Notify [EMAIL PROTECTED]
---------------------------------------------------------------------

Reply via email to