beehive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ranganathan, Venkatesan" <>
Subject Building Beehive
Date Fri, 23 Jul 2004 22:20:26 GMT

I was able to successfully build and test Beehive from my environment but I though there are
a couple of things that I will share so that it is useful for others who might hit this

1)  If you are behind a firewall, it would be useful to add a setproxy task to the build document
(build.xml).    For example, 
   <setproxy proxyhost="host" proxyport="port">
   During bootstrap this is used to get the JSR 173 jar file and without this task, bootstrap
will fail.
   I think it would be good to add the setproxy in a commented form in the build.xml and have
instructions in BUILDING.txt to alert users to this
   I have attached a couple of patches to build.xml and BUILDING.txt.  I don't know whether
this conforms to the project guidelines in terms of formatting, naming convention etc.  Please
apply it if you think it is useful

Index: BUILDING.txt
--- BUILDING.txt	(revision 23158)
+++ BUILDING.txt	(working copy)
@@ -11,6 +11,23 @@
 directory.  For example, if you ran svn checkout from "C:\MyProjects", your 
 BEEHIVE_HOME will be "C:\MyProjects\beehive\trunk"
+NOTE: If you need to use proxies you can setup additional environment
+      variables so that ant bootstrap target is successful in getting the
+      JSR 173 API jar file.  
+           PROXYHOST=<name of proxy host>
+           PROXYPORT=<port used for proxying>
+           PROXYUSER=<username for proxy authentication>
+           PROXYPASSWORD=<password for proxy authentication>
+           NONPROXYHOSTS=<hosts that should not be proxied>
+           SOCKSPROXYHOST=<socks proxy host name>
+           SOCKSPROXYPORT=<socks proxy port>
+       At the least, you will need to set PROXYHOST and PROXYPORT if your
+       environment requires a proxy connection 
+       For information on proxy support using the setproxy tag, please
+       visit
 In addition, you'll need to install Ant in $BEEHIVE_HOME/installed/ from 
 the archive in $BEEHIVE_HOME/external/ant/apache-ant-1.6.1-bin.(zip|tar). 
 The installed Ant distribution should end up here:

Index: build.xml
--- build.xml	(revision 23158)
+++ build.xml	(working copy)
@@ -7,7 +7,6 @@
     <property environment="os"/>
     <property file=""/>
     <!-- Local properties used to specify the installers and the directories into which
they should be installed -->
     <property name="tomcat.installer" location="${beehive.external.dir}/tomcat/"/>
     <property name="log4j.installer" location="${beehive.external.dir}/log4j/"/>
@@ -144,7 +143,7 @@
         <antcall target="get.jsr173"/>
-    <target name="get.jsr173" unless="jsr173.present">
+    <target name="get.jsr173" unless="jsr173.present" depends="ensure.proxysettings">
         <mkdir dir="${beehive.external.dir}/xmlbeans"/>
         <get dest="${jsr173.installer}" src=""
              verbose="true" usetimestamp="true" ignoreerrors="false"/>
@@ -152,6 +151,42 @@
         <unzip src="${jsr173.installer}" dest="${beehive.installed.dir}/jsr173"/>
+    <target name="ensure.proxysettings">
+        <echo>Ensuring whether proxy setup is required</echo>
+        <condition property="proxy.needed">
+	   <and>
+		<isset property="os.PROXYHOST"/>
+	   </and>
+	</condition>
+        <condition property="socks.proxy.needed" value="true">
+	   <and>
+		<isset property="os.SOCKSPROXYHOST"/>
+	   </and>
+	</condition>
+        <antcall target="set.proxy"/>
+        <antcall target="set.socks.proxy"/>
+    </target>
+    <target name="set.proxy" if="proxy.needed">
+       <echo>Proxy setup needed.</echo>
+       <echo>Proxy host: "${os.PROXYHOST}"</echo>
+       <echo>Proxy port: "${os.PROXYPORT}"</echo>
+       <echo>Proxy user: "${os.PROXYUSER}"</echo>
+       <echo>Proxy password: "${os.PROXYPASSWORD}"</echo>
+       <echo>Non proxy hosts : "${os.NONPROXYHOSTS}"</echo>
+       <setproxy proxyhost="${os.PROXYHOST}"
+                 proxyport="${os.PROXYPORT}"
+       	         proxyuser="${os.PROXYUSER}"
+                 proxypassword="${os.PROXYPASSWORD}"
+                 nonproxyhosts="${os.NONPROXYHOSTS}"
+	/>
+    </target>
+    <target name="set.socks.proxy" if="socks.proxy.needed">
+       <echo>Socks Proxy setup needed.</echo>
+       <setproxy socksproxyhost="${os.SOCKSPROXYHOST}"
+                 socksproxyport="${os.SOCKSPROXYPORT}"
+	/>
+    </target>
     <target name="usage" description="Print the usage for this build.xml">
         <java fork="no" classname="">
             <arg line="-projecthelp"/>

2)  Another thing that tripped me was that my JDK1.5.0 said beta-2 but the build was build
47 whereas the build available to download is build 51.

The later one has this version string
java version "1.5.0-beta2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-beta2-b51)
Java HotSpot(TM) Client VM (build 1.5.0-beta2-b51, mixed mode, sharing)

And the one I had before has a version string as below

java version "1.5.0-beta2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-beta2-b47)
Java HotSpot(TM) Client VM (build 1.5.0-beta2-b47, mixed mode)

This resulted in some compilation errors.  So, I guess my point is, if you have JDK 1.5.0
already, make sure that it is build 51.



BTW, my JIRA id is nrv

View raw message