ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Pepersack" <RPepers...@mdinsurance.state.md.us>
Subject Re: Ant and the Windows Registry
Date Tue, 17 Oct 2006 12:56:48 GMT
I tried the Java Preferences API, but it won't let you access registry
entries.  It will only let you read/write to registry entries that you
create specifically for your Java application, based on the Java
package.

So, I tried orangevolt, but I get this error:

BUILD FAILED
C:\MIAEnterpriseSystem\Delivery8.0\build.xml:40: taskdef A class needed
by class com.orangevolt.tools.ant.Win32ShortcutTask cannot be found:
com/roxes/win32/UrlFile

I tried taking Peter Kitt's advice by putting the
orangevolt-ant-tasks.jar file into %USERPROFILE%/.ant/lib.  But, no such
directory exists in my C:\Documents and Settings directory.  When I
tried to create the .ant directory, Windows 2000 gave me this error:  

You must type a filename.

So, I tried adding the orangevolt .jars to my classpath with no
success.  Here's the snippet from my build file:

    <path id="build.classpath">
        <pathelement location="${classes.dir}/easserver.jar" />
        <pathelement location="${classes.dir}/easj2ee.jar" />
        <pathelement location="${classes.dir}/easclient.jar" />
        <pathelement location="${classes.dir}/jconn2.jar" />
        <pathelement
location="${classes.dir}/orangevolt-ant-tasks-1.3.5.jar" />
        <pathelement
location="${classes.dir}/roxes-win32forjava-1.0.4.jar" />
        <pathelement location="${java.home}/lib/tools.jar" />
        <pathelement location="${classes.dir}" />
        <pathelement location="${src.dir}" />
    </path>

    <taskdef classpath="build.classpath"
resource="com/orangevolt/tools/ant/taskdefs.properties"/>
    <target name="orangevolt" description="Check for EAServer's
classpath">
        <!--
            Look for
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Jaguar/Parameters/CLASSPATH
        -->
        <win32.registry root="HKEY_LOCAL_MACHINE" key="SYSTEM">
            <exists property="test"
subkey="CurrentControlSet/Services/Jaguar/Parameters" entry="CLASSPATH"
/>
        </win32.registry>

        <echo message="test=${test}" />
    </target>

What am I doing wrong?

Thanks,

Bob

Robert Pepersack
Senior Lead Developer
Maryland Insurance Administration
410-468-2054

>>> peter.kitt.reilly@gmail.com 10/13/2006 9:34:42 AM >>>
On 10/13/06, Robert Pepersack <RPepersack@mdinsurance.state.md.us>
wrote:
> Hi all,
>
> I would like to read and alter a Windows registry key with Ant.  You
> may ask why would I want to change the Windows registry??!!  I want
to
> change the registry because I want to change my J2EE server's
(Sybase
> EAServer) classpath from Ant.  My fellow developers and I could
change
> our servers' classpathes manually by opening regedit, but this would
be
> prone to point-and-click screw-ups.  I think that changing the
registry
> from Java would be more reliable and less error-prone.
>
> I Googled on the subject and found that there is a Java Preferences
API
> and Orangevolt Ant Tasks.  Has anyone used these, or know of
something
> better?
>
The orangevolt ant tasks look pretty nice. They include a jni dll
that accesses the win reg (why oh why did sun not support jdirect?)

On initial load, the tasks  copy the dll into $JAVA_HOME/jre/bin.
The tasks can then read and write reg entries.

Usage: drop the orangevolt-ant-tasks.jar file into
%USERPROFILE%/.ant/lib
and
use:
<project name="rox" default="main">
    <taskdef resource="com/orangevolt/tools/ant/taskdefs.properties"/>

  <target name="main">

    <win32.registry root="HKEY_LOCAL_MACHINE" key="SOFTWARE">
      <!--
           softwareExists will be set if
           HKEY_LOCAL_MACHINE\SOFTWARE exists
           -->
      <exists property="softwareExists"/>
    </win32.registry>

    <echo message="softwareExists=${softwareExists}"/>
  </target>
</project>

Peter


> Thanks,
>
> Bob
>
> Robert Pepersack
> Senior Lead Developer
> Maryland Insurance Administration
> 410-468-2054
>
>
---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@ant.apache.org 
> For additional commands, e-mail: user-help@ant.apache.org 
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org 
For additional commands, e-mail: user-help@ant.apache.org 


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


Mime
View raw message