JDK 1.3 Soft Links in CLASSPATH

Hi,
I found that the JDK1.3 javac compiler doesn't
follow soft-links in unix filesystem. Whereas in
JDK1.1.6 I was able to specify classpath through
soft links also.
Can anyone give more insight into this? Can this
behavior be tailored - either via JDK or UNIX?
Thanks,
Hari

This looks like Bug 4266026 in the Bug Database. It's fixed in JDK 1.4 and maybe 1.3.1.
http://developer.java.sun.com/developer/bugParade/bugs/4266026.html

Similar Messages

  • Sharing album artwork with fast user switching and soft links

    We have 4 users, 4 iPods, 4 sets of playlists. Each has their own account. All the music lives on an external drive and each iTunes is set to store its music in the same shared folder. That all works fine.
    Now we're getting into album artwork, and I want to share that too. I found a posting somewhere that suggested a soft link from /Users/Me/Music/iTunes/Album Artwork -> /Volumes/BigDrive/iTunes Artwork. I did that with one user and it worked fine - copied Album Artwork folder and set soft link and voila, all the art. I also set all permissions to allow r/w from everyone.
    But when I set the soft link from 2nd user, iTunes shows no art. I can browse all the art files fine from that users Finder.
    Thanks for any help!
    mac mini   Mac OS X (10.4.9)   iTunes 7.1.1

    And just like that I may have found the solution! IT suddenly occured to me that one of the settings that got changed when we imported my wife's profile was a change to the sleep settings. Previously, I had had my iMac set to never go to sleep, since it shares our media with the rest of the house and runs eyeTV to record TV shows and such. For a little while after my wife's account was imported the settings to changes so that the computer would go to sleep after 15 minutes. I'm not totally sure why, but I think having that set up somehow meant that when we switched accounts my other account just "went to sleep" and therefore stopped sharing the iTunes library. After I noticed the change and switched the computer back to "never" for sleep the problem seems to have stopped.
    So perhaps check your sleep settings? That seems to be the only change I can think of that got things working correclty for me. I'll keep digging though and see if I can find any more helpful info. Good luck!

  • Soft links and xcode projects

    In other unix environments using soft links ("ln -s") is a handy way of "abstracting away" at the file system level what a file or directory actually contains, so that its contents can be easily changed without having to modify the original file or directory. In other words, if I have eg. three versions of the same file, and several projects share the usage of one of those files, I can easily change which version of the file those projects will use by simply making a softlink that points to the file I want, and make those projects depend on that softlink (they see it as a regular file). If I later want to change the file in question, I only need to change the softlink to point to another version of the file.
    This is especially useful when dealing with a third-party library that gets regular updates. I can install the third-party library somewhere, with the version number of the library in the directory name, and have a more generic directory name as a softlink (as a concrete example, I could have a softlink named "cocos2d" pointing to a directory named "cocos2d-iphone-0.99.5"). If I update the library, I can install it in a new directory (eg. "cocos2d-iphone-1.0.1") and simply change the softlink to point to the new directory, and then recompile the projects that depend on it.
    The problem is that Xcode doesn't like softlinks. I don't know if this is a feature of MacOS X in general, or a quirk in Xcode in particular. The problem is that Xcode doesn't want any softlinks in any of its paths, and instead always resolves where the softlink is really pointing to. Thus if I add, for example, the file "libraries/cocos2d/cocos2d-ios.xcodeproj" to the project, what ends up in the project is actually a reference to "libraries/cocos2d-iphone-0.99.5/cocos2d-ios.xcodeproj". Thus the whole softlink is circumvented, making it useless. If I update the library in question, I have to go through all the projects that use it and change the references to point to the new directory. This causes only needless extra work.
    This resolving of softlinks only happens when adding a new file to the xcode project. Xcode doesn't seem to change them afterwards, if they already exist in the project. In the past I could get around this problem by editing the project file directly with a text editor and forcing the path to refer to the softlink. However, all the paths in xcode 4 projects seem to be obfuscated, making this impossible. Another possibility is to rename the directory in question with the name of the softlink, then add it to the project, then restore its original name and then add the soft link.
    Is there any better way of doing this?

    Hello I have probably exact same problem with source files whereas a constant location (my softlink) points to different version of the sources in a repository. For example:
    ../MyProject/DependantProjetXyz could point to
    ../Repository/DependantProjectXyz/V1.0
    ../Repository/DependantProjectXyz/V1.1
    My xcode project is setup with ../MyProject/DependantProjetXyz which is pretty useful as I don't need to update all the include and lib path everytime I update the dependancies.
    The main problem I am facing is that if I have a compilation error in the dependancies, xcode isn't able to automatically bring me to the error. It simply open the file and position at the very first line in the file. No highlight.
    I am forced to use contextual menu on the error then reveal in the log to find the line number and manually navigate to that line. In other words, I am almost back to good old command line compilation with separate text editor...
    BTW, this was all working fine before upgrade to xcode 4.
    Was a bug filed on this issue?

  • Classloader & soft links & stat calls

    Solaris 7 - WLAS 4.5.1
    Our servlet class loader is loading classes that it resolves thru a soft
    link, we are having lots of stat calls. We cannot get the performance to a
    satisfactory level, does anyone have any idea about performance with respect
    to loading classes and the soft linked directory structure?
    Thanks,
    James

    We have a stable 4.5.1 that we are migrating to another server, given that
    we have a stable system we want to migrate as-is to the new server, then
    migrate from 4.5.1 to 5.1 ... then to 6.x. I cannot convince the client to
    go to a new server with a new application server all in one step.
    James
    "Mike Reiche" <[email protected]> wrote in message
    news:3b603e4e$[email protected]..
    >
    Same answer as to your other question. WLS 5.1.
    You can spend weeks or months trying to figure this out or got to 5.1 andget
    it over with.
    What's the point in solving the problem for 4.5.1 if
    1) going to 5.1 is painless
    2) you're going to go to 5.1 anyway
    Mike
    "James Carlson" <[email protected]> wrote:
    Solaris 7 - WLAS 4.5.1
    Our servlet class loader is loading classes that it resolves thru a soft
    link, we are having lots of stat calls. We cannot get the performance
    to a
    satisfactory level, does anyone have any idea about performance with
    respect
    to loading classes and the soft linked directory structure?
    Thanks,
    James

  • Soft links and endpoints

    Hello,
    I would be grateful if someone would confirm to me the following:
    A soft link always relates to an external endpoint.
    Is the above statement true?
    Julien.

    Soft, hard, and standard links always apply to internal endpoints (external and internal endpoints are defined by the spec in section 5.1.7). They are used to govern connections made by the NMR between service consumers and providers.
    External endpoints are used only for endpoint reference (EPR) generation. (External service providers are considered internal endpoints, since they are proxied by the binding components.)

  • Soft links and inodes

    It's my understanding that a unix file consists of three components: a filename, an inode, and the data. So if you create a text file called "original", you get something like this:
    original -------> inode ------> data
    Then if you create a soft link to the original file, the soft link has its own filename, inode, and data--where the data is the filename of the original file. So for instance, if you use the command:
    $ cat soft_link
    it traverses the chain:
    softlink-->softlink's inode-->data-->original-->original's inode-->original's data
    On the other hand, if you create a hard link to the original file, the hard link does not get its own inode; its filename points to the original file's inode. So for instance, if you use the command:
    $cat hard_link
    it traverses the chain:
    hard_link ---> original's inode ---> original's data
    and then the original's data is displayed.
    However, on mac os x when I do an ls -i on the soft link to display its inode, it displays the same inode number as the original file. Furthermore, if I rm(remove) the original file and recreate it using touch original, the new original gets a new inode number, and the soft_link's inode changes to the new inode. I don't understand that. I expected that the soft_link initially would have a different inode number than the original, and that the soft link's inode would not change when the original was recreated.

    You may want to read this page: http://linuxgazette.net/105/pitcher.html
    It contains a pretty good explanation of the difference between a soft link and a hard link but it doesn't directly answer your question about the inodes. However, it appears that there's a subtle difference in the way "ls" acts depending on whether you give it a filename or not and depending on whether you use the "-l" option in conjunction with "-i".
    Here, with filenames and without "-l" it appears that basic.file and softlink.file have the same inodes:
    <pre>
    iMacHerman:~/Desktop/temptest steve$ ls -i basic.file
    3723769 basic.file
    iMacHerman:~/Desktop/temptest steve$ ls -i softlink.file
    3723769 softlink.file
    </pre>
    Yet here, without filenames and using the "-l" option you can see that the softlink.file's inode is different (while hardlink.file is the same):
    <pre>
    iMacHerman:~/Desktop/temptest steve$ ls -li
    total 24
    3723769 -rw-r--r-- 2 steve steve 27 Feb 24 08:01 basic.file
    3723769 -rw-r--r-- 2 steve steve 27 Feb 24 08:01 hardlink.file
    3723768 lrwxr-xr-x 1 steve steve 10 Feb 24 07:59 softlink.file -> basic.file
    </pre>
    Here using both a filename and "-l" you again get softlink.file's actual inode:
    <pre>
    iMacHerman:~/Desktop/temptest steve$ ls -li softlink.file
    3723768 lrwxr-xr-x 1 steve steve 10 Feb 24 07:59 softlink.file -> basic.file
    </pre>
    And here leaving off filename gives you softlink's actual inode even though the "-l" option was not used:
    <pre>
    iMacHerman:~/Desktop/temptest steve$ ls -i
    3723769 basic.file 3723769 hardlink.file 3723768 softlink.file
    </pre>
    So it appears that if you do not use the "-l" option and you give "ls" a filename that it follows the softlink and reports the inode of the original file. Other variations (using "-l" or leaving off the soft link's filename list the soft link's actual inode. This seems a little confusing to me and possibly a bug in "ls"... but maybe there's a reason for it working this way???
    Steve
    PS - and if you do what you described, delete and then recreate the original "basic.file" it will get a new inode. And if you use the first variation of "ls" (without "-l" but with softlink's filename) then it will indeed appear that softlink's inode changed to match the new basic.file
    <pre>
    iMacHerman:~/Desktop/temptest steve$ rm basic.file
    iMacHerman:~/Desktop/temptest steve$ touch basic.file
    iMacHerman:~/Desktop/temptest steve$ ls -i basic.file
    3723912 basic.file
    iMacHerman:~/Desktop/temptest steve$ ls -i softlink.file
    3723912 softlink.file
    </pre>
    But using one of the other options shows that softlink's actual inode did not change:
    <pre>
    iMacHerman:~/Desktop/temptest steve$ ls -li
    total 16
    3723912 -rw-r--r-- 1 steve steve 0 Feb 24 08:29 basic.file
    3723769 -rw-r--r-- 1 steve steve 27 Feb 24 08:01 hardlink.file
    3723768 lrwxr-xr-x 1 steve steve 10 Feb 24 07:59 softlink.file -> basic.file
    </pre>

  • IPhoto 9.1.1 ('11) messed up soft links

    I recently noticed that iPhoto is not following all of my aliases to find the original photos. I do not copy my photos to iPhoto, so when I import them, iPhoto creates an alias to the original file (which is on the same volume).
    It turns out that iPhoto has a problem with a whole bunch of Unix style soft links that I created within the iPhoto directory structure when I moved my photos from an external drive to my boot volume. When I did this, I had written a shell script to search for the original on its new location and replace the stale OS X Alias (which pointed to the old volume) with a soft link to the new file. It seemed to work fine way back then (1/31/08).
    At first, I thought that iPhoto was not following the soft links. However, when I examine the original files to which the soft links pointed, they have all been changed to Aliases!!!! It appears that the original photo data is still intact in each of the files, yet if you do a Get Info, it is an alias.
    I've tested a couple of ideas on solutions:
    a) cp -X of the original file to get rid of the extended attribute info. Still doesn't work. However, the new file (without the extended attributes) does open in Preview so that I can see the original jpg.
    b) replacing a soft link with a Finder Alias to the 'cp -X' file. Still doesn't work.
    What should I do now?
    Thanks!
    Henry Flurry

    Hmm ... that doesn't ring true. iPhoto only has problems with the photos that were soft links. Here's what I imagine happened:
    1) iPhoto recognizes that the original photo is a link
    2) It then decides to update the extended attributes and, assuming that the file is an Alias instead of a Unix Soft Link, opens the file directly to update the extended attributes
    3) Because the file is a soft link, the fopen (or whatever it uses) opens up the original file directly, and not the link
    4) When the extended attributes are updated, they end up getting added to the original data file.
    I'll admit that this is conjecture and I don't know why iPhoto would be updating the extended attributes. Does iPhoto store any data in this? Could this be something further I need to update?
    I'd like to poke around a bit more. For iPhoto 11, what is the directory structure of the iPhoto library? Perhaps I'm making wrong assumptions on which files to change.
    Thanks!
    Henry
    Message was edited by: Henry AZ to fix formatting

  • Use a soft link to move /Users to another volume

    I'd like to move /Users to another volume, so that I can have the OS and applications on an SSD, without having to get an SSD of several terabytes.
    Users log in to a Mac Pro using Active Directory accounts. Consequently, they do not have accounts on the Mac, and I cannot use Mac user properties to move their home directories. Also, the set of users who can log in is limited only by the AD user base, which has tens of thousands of entries. Of course, I cannot change the AD schema. So it has to be a solution that happens automatically. If a new user logs, her home directory must be automatically created on a volume which is not the startup.
    I made a soft link from the startup volume to the new volume where I want the homes to go. This seems to work. After a restart, all the applications I tried had no problem following the soft link.
    Is there any danger here? Or is there some better solution? I tried, following a suggestion which apparently worked in older versions of the OS, to make an entry in /etc/fstab to mount the new disk as /Users. This did not work in Mavericks (my test machine). The new disk appeared in Disk Utility, but could not be mounted. Perhaps it would work on Mountain Lion, which is the machine where this change ultimately needs to be implemented.
    I will be obliged for any suggestions or warnings.

    Reading through the article you referenced, I noticed they talked about downsides to moving home directory.
    The issue about non-boot drives not being as protected as the boot drive.
    Specifically related to permissions. I'm not exactly sure what they mean. If you ignore permissions on the non-boot drive that means that others can browse any of those files?
    I'm assuming they mean you would have to change the permissions on the non-boot drive? But does that mean that only the original owner can change those permissions? Or can any user change permissions on a non-boot drive?
    How is this different from user files on the boot drive? Can't you change permissions on your home directory?
    I'm interested in moving my directory to the non-boot drive, so I'd like to understand the downsides. Especially anything related to user security.
    Thanks.

  • Add 'soft link' of a shared file in the body of message.

    I want to know if there is a way to hyperlink a shared file which is on a server and add it in the body of message rather than sending that whole file as an attachment. So that when the recipeint receives the e-mail, he/she can just click on the link and that particular file will open.
    I hope my question is clear enough. I need your expert opinion in this matter. Is this do-able or am I crazy?

    I tried doing the same thing. I guess I am doing something wrong.
    I have a webserver and folder named projects under webserver. I want to access a file from the projects folder. Hence my absolute file path looks something like this:
    \\Web_Server\web_server\projects\bci.doc . How can I make this path as URL? I understand that if I have any internet website or any ip address, I can hyperlink it. But I am not sure, how can I hyperlink a file path such as this.
    I have tried the following code in the javamail:
    String tempFileName ="Web_server/WEB_SERVER/Projects/BCI.doc";
    </font>";
    This did not help me.
    Please help.
    Thanking you in advance,
    Riddhi.

  • Oracle datafile moving soft links

    hi,
    i need to move my datafile from one location to other location. actually in database the data files are confiured with softlinks..
    so how can i move my data file (physicl location )from one location to other physical location,
    i thinking
    1. put the tablespace offline .
    2. move the datafile from one location to other.
    my doublt is how i alter the link location to point to new location.
    should i create new link to point this new location and
    3.alter tablespace rename datafile <old link> to <new link >
    put the tablespace online .
    is any method i can alter the link to point to new location so that i can avoid step 3.
    thanks
    aditya

    You need to do 1, 2 but not 3.
    Instead you need to drop the old link and create a new link to point to the new location of the datafile.
    The name is unchanged as far as the DB is concerned, but you need to make sure the tablespace is offline while making the change.

  • Jdk 1.4 install - "." in Classpath not working

    Hello friends,
    I have installed jdk1.4. However "javac" won't compile files that include classes in the current dir:
    import classname;
    I keep getting error
    import classname;
    ^ "." expected.
    But the first thing in my CLASSPATH is ".;..".
    I don't see why it is not working properly. The system is windows 2000, and it was set up as enviroment variable. It worked fine with jdk1.3.
    Help!

    Found the problem - since they are in the same dir, shouldn't include them in "import..." at all.

  • Problem in the package or classpath

    Hello every body
    I want to add a module at "jhove" which is open source: http://hul.harvard.edu/jhove/index.html
    When I launch jhove like this: ./jhove -k file.pdf, it shows me more informations about this pdf.
    I want that it re-knows me anathor type of file.(warc format)
    Then I have to write a new module.
    I try to do it following the link: http://hul.harvard.edu/jhove/writingamodule.html
    I added my java code in :/home/jhove/classes/edu/harvard/hul/ois/jhove/module/Project/
    The compilation works well.
    I add : EXTRA_JARS=/jhove/classes/edu/harvard/hul/ois/jhove/module/Project/WarcModule.jar
    At the file: jhove.tmpl
    I also add this code at jhove.conf like they montionned in document:
    <module>
    <class>WarcModule</class>
    </module>
    I also try with this solution:
    <module>
    <class>edu.harvard.hul.ois.jhove.module.Project.MonModule</class>
    </module>
    But I have this error:
    edu.harvard.hul.ois.jhove.JhoveException: cannot instantiate module: WarcModule
    at edu.harvard.hul.ois.jhove.JhoveBase.init(Unknown Source)
    at Jhove.main(Unknown Source)
    I think that is problem in the classpath.
    There is my code:
    package edu.harvard.hul.ois.jhove.module.Project;
    import java.io.File; 
    import java.util.*;
    import java.io.*;
    import edu.harvard.hul.ois.jhove.*;
    import edu.harvard.hul.ois.jhove.ModuleBase;
    import edu.harvard.hul.ois.jhove.RepInfo;
    import org.archive.io.warc.*;
    public class MonModule extends ModuleBase
             private static final String NAME = "Warc-hul";
             private static final String RELEASE = "1.7";
             private static final int [] DATE = {2008, 9, 23};
             private static final String [] FORMAT = { "warc"};
             private static final String COVERAGE =
                 "PDF 1.0-1.6; PDF/X-1 (ISO 15930-1:2001), X-1a (ISO 15930-4:2003), " +
              "X-2 (ISO 15930-5:2003), and X-3 (ISO 15930-6:2003); Tagged PDF; " +
              "Linearized PDF; PDF/A (ISO/CD 19005-1)";
             private static final String [] MIMETYPE = {"application/warc"};
             private static final String WELLFORMED = "A PDF file is " +
                 "well-formed if it meets the criteria defined in Chapter " +
                 "3 of the PDF Reference 1.6 (5th edition, 2004)";
             private static final String VALIDITY = null;
             private static final String REPINFO = null;
             private static final String NOTE = "This module does *not* validate " +
              "data within content streams (including operators) or encrypted data";
             private static final String RIGHTS = "Copyright 2003-2007 by JSTOR and " +
              "the President and Fellows of Harvard College. " +
              "Released under the GNU Lesser General Public License.";
             private static final String ENCRYPTED = "<May be encrypted>";
    protected MonModule(String NAME, String RELEASE, int[] DATE, String[] FORMAT, String COVERAGE, String[] MIMETYPE, String WELLFORMED, String VALIDITY, String REPINFO, String NOTE, String RIGHTS, boolean x)
             super  (NAME, RELEASE, DATE, FORMAT, COVERAGE, MIMETYPE, WELLFORMED,VALIDITY, REPINFO, NOTE, RIGHTS, true);
    * PRIVATE INSTANCE FIELDS.
    /* First 6 bytes of file */
    protected byte _sig[];
    /* Checksummer object */
    protected Checksummer _ckSummer;
    /* XMP property */
    protected Property _xmpProp;
    /* Input stream wrapper which handles checksums */
    protected ChecksumInputStream _cstream;
    /* Data input stream wrapped around _cstream */
    protected DataInputStream _dstream;
    /* Flag for presence of global color table */
    protected boolean _globalColorTableFlag;
    /* Size of global color table */
    protected int _globalColorTableSize;
    /* Count of graphic control extensions preceding
    * something to modify */
    protected int _gceCounter;
    /* Top-level metadata property */
    protected Property _metadata;
    /* Blocks list property */
    protected List _blocksList;
    /* Total count of graphic and plain text extension blocks */
    protected int _numGraphicBlocks;
    public void checkSignatures (File file,  InputStream stream, RepInfo info)
    throws IOException
    int sigBytes[] = { 'W', 'A', 'R', 'C'};
    int i;
    int ch;
    try {
        _dstream = null;
        _dstream = getBufferedDataStream (stream, _je != null ?
                    _je.getBufferSize () : 0);
        for (i = 0; i < 4; i++) {
            ch = readUnsignedByte(_dstream, this);
            if (ch != sigBytes) {
    info.setWellFormed (false);
    return;
    info.setModule (this);
    info.setFormat (_format[0]);
    info.setMimeType (_mimeType[0]);
    info.setSigMatch(_name);
    catch (Exception e) {
    // Reading a very short file may take us here.
    info.setWellFormed (false);
    return;
    Please can any one help me.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    Daniel, not sure if everything is clear now, but the way you are validating a WARC file is seriously flawed! I strongly suggest you use an existing WARC tool to do the actual parsing/validating.
    I've seen more and more people on JHove's mailing list posting problems on how to create their own modules, so I decided to write a small how-to-write-your-own-module-guide.
    Perhaps you'd like to give it a shot. I'll also post it on the mailing list.
    ================================================================================
    This is a step-by-step tutorial that will enable you to compile and run a
    custom made module for Harvard's idetification tool JHove [1]. This is not
    a tutorial on Java programming! For a thorough explanation of this tool and
    extensive documentation, please see:
    [http://hul.harvard.edu/jhove/documentation.html]
    ================================================================================
    = Setp 1 =
    Download and unzip JHove 1.1f [2]. The unzipped folder will be called
    JHOVE_HOME from now on.
    ================================================================================
    = Step 2 =
    In this example I will construct a very elementary ARC module and will be using
    Heritrix' [3] ARCUtils class, so download Heritrix 1.14 [4] and unzip it. After
    unzipping, locate the file 'heritrix-1.14.1.jar' (it might be a different
    version) and place it in the directory 'JHOVE_HOME/bin'.
    ================================================================================
    = Step 3 =
    Create a folder 'JHOVE_HOME/bin/test' and create a new file in it called
    'ArcModule.java'. Paste the following contents in that file:
    package test;
    import java.io.IOException;
    import java.io.InputStream;
    import edu.harvard.hul.ois.jhove.ModuleBase;
    import edu.harvard.hul.ois.jhove.RepInfo;
    import org.archive.io.arc.ARCUtils;
    public class ArcModule extends ModuleBase {
        private static final String NAME = "ARC-hul";
        private static final String RELEASE = "0.1";
        private static final int[] DATE = {2008, 11, 11};
        private static final String[] FORMAT = {"ARC"};
        private static final String COVERAGE = null;
        private static final String[] MIMETYPE = {"application/arc"};
        private static final String WELLFORMED = "...";
        private static final String VALIDITY = null;
        private static final String REPINFO = "...";
        private static final String NOTE = null;
        private static final String RIGHTS = "GNU LGPL";
        public ArcModule() {
            super (NAME, RELEASE, DATE, FORMAT, COVERAGE, MIMETYPE, WELLFORMED,
                    VALIDITY, REPINFO, NOTE, RIGHTS, false);
            // Optionally set some Agent information: see the other Modules how
            // this can be done.
        @Override
        public int parse(InputStream stream, RepInfo info, int parseIndex) {
            info.setModule(this);
            boolean wellFormed = false;
            try {
                if(ARCUtils.testCompressedARCStream(stream)) {
                    wellFormed = true;
            } catch (IOException e) {
                e.printStackTrace();
            info.setWellFormed(wellFormed);
            return 0;
    }================================================================================
    = Step 4 =
    Compile this ArcModule by opening a shell (command prompt) and cd-ing to
    'JHOVE_HOME/bin' and executing the following command:
    *nix & Mac OS:
    javac -cp .:JhoveApp.jar:heritrix-1.14.1.jar test/ArcModule.javaWindows:
    javac -cp .;JhoveApp.jar;heritrix-1.14.1.jar test\ArcModule.java
    (Note, if you're using JDK 1.4, replace '-cp' with '-classpath')
    You shouldn't get any messages if all goes well.
    ================================================================================
    = Step 5 =
    Open the file 'JHOVE_HOME/conf/jhove.conf' and add the following right beneath
    the line <bufferSize>?????</bufferSize>, where ????? is a number:
    <module>
      <class>test.ArcModule</class>
    </module>Save the file.
    ================================================================================
    = Step 6 =
    Create a folder called 'JHOVE_HOME/arcs' and copy two compressed ARC files in
    them. If you don't have any compressed ARC files laying around, you can
    download two small [5]. The file 'A.arc.gz' is a valid compressed ARC file,
    while 'B.arc.gz' is the same as 'A.arc.gz' but I removed the ARC-header from
    the latter, making it an invalid ARC file.
    ================================================================================
    = Step 7 =
    Open a shell, cd to 'JHOVE_HOME/bin' and execute the following command:
    *nix & Mac OS:
    java -cp .:JhoveApp.jar:heritrix-1.14.1.jar Jhove -c ../conf/jhove.conf -m ARC-hul ../arcsWindows:
    java -cp .;JhoveApp.jar;heritrix-1.14.1.jar Jhove -c ..\conf\jhove.conf -m ARC-hul ..\arcsWhich will cause JHove to scan everything that is in 'JHOVE_HOME/arcs' folder
    and throws it through your newly create ArcModule. The output will be as
    follows:
    Jhove (Rel. 1.1, 2008-02-21)
    Date: 2008-11-14 22:29:51 CET
    RepresentationInformation: .../jhove/arcs/A.arc.gz
      ReportingModule: ARC-hul, Rel. 0.1 (2008-11-11)
      LastModified: 2008-08-24 20:23:20 CEST
      Size: 130870
      Status: Well-Formed and valid
    RepresentationInformation: .../jhove/arcs/B.arc.gz
      ReportingModule: ARC-hul, Rel. 0.1 (2008-11-11)
      LastModified: 2008-11-14 21:53:15 CET
      Size: 116136
      Status: Not well-formedWhich is the expected result: A is valid and B is not.
    ================================================================================
    = Final remarks =
    As I said, this is not a programming tutorial, nor is it the best way to
    validate ARC files: more meta data should be extracted from the file. But I
    leave that for you. This was only a guide to show you how to get started on
    writing and running your own modules. You can have a look at the source
    of the existing modules to see the "best practices" w.r.t. writing a module.
    Best of luck!
    Regards,
    Bart.
    ================================================================================
    = References =
    [1] [http://hul.harvard.edu]
    [2] [http://hul.harvard.edu/jhove/download.html]
    [3] [http://crawler.archive.org]
    [4] [http://sourceforge.net/project/showfiles.php?group_id=73833&package_id=73980]
    [5] [http://iruimte.nl/arcs]

  • I want to know what means CLASSPATH?

    I asked this before, but I didn't get a good answer but I think it should be easy for you to help me.
    OS: Windows XP Professional
    SDK: J2SE v1.3.1_03 ( installed into standard directory C:\jdk1.3.1_03 )
    PATH: %SystemRoot%;%SystemRoot%\system32;%SystemRoot%\System32\Wbem;C:\jdk1.3.1_03\bin
    CLASSPATH: empty
    Now here's the thing I dont get:
    What is CLASSPATH for? If I can leave it empty, why do I sometimes read that I have to set this and that in my CLASSPATH? Is it for Windows or does java use it for something? I know some time ago, I used an older SDK, and I had to set it to blablabla\classes.zip. I did, but I never knew why...

    Yes it helps, thanks!
    But do you mean with 'using' my own classes,
    inheriting them? Because I have no problem writing my
    classes and executing them, or using object classes I
    made myself...without setting any classpath for
    them...
    Maybe you mean when you make a class and put it
    somewhere, inherit it or implement it in a program
    that you run from a different directory? Then I
    should add the directory where the superclass is in my
    classpath, correct? Can this class be in a jar, or
    zip? Can the jvm find it then? Then I could make my
    own .jar collection of reusable classes, right?
    I don't know if this is how it works?
    thx
    -MikePerhaps this link can help you:
    http://java.sun.com/products/jdk/1.2/docs/tooldocs/win32/classpath.html

  • What is the CLASSPATH for?

    Hi!
    I have installed the JDK and it works fine, only for some problems with packages I've created. (I can�t import using "*", I have to import every class to use, even in the same package)
    The only thing I haven�t configured it's the CLASSPATH.
    May it be the cause of my problem?
    Thanks
    Santiago

    Hi,
    Reagrding what "CalssPATH" is for..
    Check this link.
    http://java.sun.com/products/jdk/1.1/docs/tooldocs/win32/classpath.html
    Hope this info will help you.
    Thanks
    Roopasri Vittal
    Developer Technical Support
    Sun Microsystems
    http://sun.com/developers/support

  • CLASSPATH nightmare!!!

    Hi
    I'm, as you would, guess new to Java and I have two problems I would apprciate some help with.
    1. I have a fresh instalation of JDK on my Redhat distro and it works perfectly untill I try to import the javax.* librarys. Now I know that most people seem to have a problem with setting their CLASSPATH correctly but believe me, I have tryied every possible option. Just to assure you here are some of the options tryied.
    1. Setting CLASSPATH in the bashrc file through
    export CLASSPATH=$CLASSPATH:/usr/jdk/jre/lib
    2.Giving the classpath as a command when compiling through
    javac -cp /usr/jdk/jre/lib NYCTax.java
    and any other combination of the two (not that there are to may :).
    But still I get the noClassDefFoundError.
    What ever I try when I check to se if I've succesfully included the javax library by typing $ java javax.swing.JFrame (for example). I get the same error message.
    My second question is regarding trying to get the java VM going on mozilla. Ive tried loading the plugin libjavaplugin_oij.so into the Mozilla plugin folder. And I've tried adding the folder in which this plugin is placed to the classpath of the mozilla run file. But nothing seems to work. All I get is the frame with a pice of Jiggsawpuzzle and the prompt that the java-VM plugin is missing. What am I not doing correctley.
    /Newbii

    I remember encountering a similar problem (from a while ago, things may have changed) on redhat. I believe you may be inadvertantly using kaffe. What are the results of
    which java
    1. Setting CLASSPATH in the bashrc file through
    export CLASSPATH=$CLASSPATH:/usr/jdk/jre/libYou should never have to import the core classes and this won't help anyway as there are no classes in that directory - they're in the rt.jar.
    Ive tried loading the plugin libjavaplugin_oij.so into the Mozilla plugin folder.I've always used a symbolic link. And you have to restart it.

Maybe you are looking for

  • Crystal reports and formatted reporting.

    hi experts, i have a clarification about  crystal reports and formatted reporting.in what scenarios they are used.. points ll be rewarded... thanks baskar

  • Looking for good backgrounds to use with a green screen?

    Any ideas where I can ding them?

  • Decoding USB Prober output on iMac

    I'm troubleshooting a USB issue with an old joystick device. I can't find explanations to the various fields in USB Prober, i.e. what are the consequences of specific values/labels. I would like to verify that this device will not work with OS Maveri

  • Upgrade / install new windows

    is there anyway i can install new windows or upgrade windows on my palm treo 750 through my computer and data cable.. Post relates to: Treo 750 (AT&T)

  • Save to web photo goes darker by 1 stop?

    hello, whyy is it when i "save to web" the photo that I'm editing goes darker by at least one stop, meaning i have to go back into the main part of the program and edit it blind so that it comes out OK when saved for web? Didnt seem to be a problem w