# | Line 1 | Line 1 | |
---|---|---|
1 | < | i-scream Server Startup |
2 | < | ======================= |
1 | > | i-scream Server README |
2 | > | ====================== |
3 | ||
4 | < | Current startup sequence: |
4 | > | ANT build vs Make build |
5 | > | ----------------------- |
6 | ||
7 | < | uk.ac.ukc.iscream.core.Core |
8 | < | uk.ac.ukc.iscream.clientinterface.ClientInterfaceMain |
9 | < | uk.ac.ukc.iscream.dbinterface.DBInterfaceMain |
10 | < | uk.ac.ukc.iscream.filtermanager.FilterManager |
11 | < | uk.ac.ukc.iscream.rootfilter.RootFilterMain |
12 | < | uk.ac.ukc.iscream.filter.FilterMain |
7 | > | There are now two methods of compiling the server distribution. The existing |
8 | > | Makefile method is still supported, but is of course limited in the OS's on |
9 | > | which it can be run. The preffered method will be an XML based build script |
10 | > | using ANT (http://jakarta.apache.org/ant) which will run on any platform. |
11 | > | However, at this stage the ANT scripts are not completely finished and may |
12 | > | have some odd behaviour. |
13 | ||
14 | < | The following sequence of commands should suffice. They will probably need |
15 | < | to be run in seperate terminal windows. |
14 | > | We envisage both the Makefile and ANT setups being maintained for some time, |
15 | > | giving the developer a choice. This document still outlines the Makefile |
16 | > | method of compiling, and will do so until such a point as the ANT scripts |
17 | > | are deemed reliable. If, however, you wish to give the ant script a whirl, |
18 | > | try the following after setting up ANT (see the ANT website for details); |
19 | ||
20 | < | make runcore |
17 | < | make runclientinterface |
18 | < | make rundbinterface |
19 | < | make runfiltermanager |
20 | < | make runrootfilter |
21 | < | make runfilter NAME=filter1 |
20 | > | ant help |
21 | ||
22 | < | If all is working this will ensure every component, including the IDL, is |
23 | < | compiled as required before execution. |
22 | > | Compiling |
23 | > | --------- |
24 | ||
25 | < | nb. you will need to ensure your classpath is correctly set prior to |
26 | < | running, otherwise java will fail to find the jacorb classes and the |
27 | < | XML parsing packages. |
25 | > | The server can now easily be compiled without worrying about setting up any |
26 | > | of the CLASSPATH's, or setting the path to JacORB. It's all self contained. |
27 | > | |
28 | > | Typical sequence to compile; |
29 | > | |
30 | > | ./configure |
31 | > | make build |
32 | > | make install prefix=/some/path |
33 | > | make clean |
34 | > | |
35 | > | In more detail, the first line ensures that the required libraries are |
36 | > | available, and sets the Makefiles up so they know where everything is. |
37 | > | The second line compiles all of the code and creates a JAR file in the |
38 | > | build directory. |
39 | > | The install line installs the server and libraries to a given location, |
40 | > | along with the configuration files. |
41 | > | Finally, the last line cleans up. |
42 | > | |
43 | > | Running |
44 | > | ------- |
45 | > | |
46 | > | It is recommended that the components are started up in the following order. |
47 | > | |
48 | > | (This can be on multiple hosts if required, as long as the order is correct). |
49 | > | |
50 | > | Core |
51 | > | ClientInterfaceMain |
52 | > | DBInterface |
53 | > | FilterManager |
54 | > | RootFilter |
55 | > | FilterMain |
56 | > | Client |
57 | > | |
58 | > | It is not necessary to start both the ClientInterfaceMain and DBInterface, |
59 | > | the server will handle only one or both. Multiple Filter's can be started |
60 | > | as required. |
61 | > | |
62 | > | These are all loaded through the ComponentManager. More details on how to |
63 | > | operate this will be provided later on. Typing "make run" will make an |
64 | > | attempt to load it up. |
65 | > | |
66 | > | Check build/etc/default.properties to set the startup list and order. |
67 | > | |
68 | > | nb. You will need to ensure that the relevant libraries are in the |
69 | > | build/lib directory. See the README in there for details. |
70 | > | |
71 | > | Makefile |
72 | > | ======== |
73 | > | The following targets are available; |
74 | > | |
75 | > | build |
76 | > | |
77 | > | Compile the entire server package, include the IDL file. Generates the |
78 | > | JAR file for the final package. |
79 | > | |
80 | > | run |
81 | > | |
82 | > | Run's the server from the JAR file in /build. |
83 | > | |
84 | > | clean |
85 | > | |
86 | > | Cleans all compiled code, and javadoc pages. |
87 | > | |
88 | > | distclean |
89 | > | |
90 | > | Also cleans files left by configure, including the libraries. |
91 | > | |
92 | > | install |
93 | > | |
94 | > | Installs the server to a given directory. Also takes a prefix; |
95 | > | make install prefix = /usr/i-scream |
96 | > | |
97 | > | cvsbuild |
98 | > | |
99 | > | Builds any tagged version of the server from CVS. This saves the need to |
100 | > | checkout a version to build it, as it's all done automatically; |
101 | > | make install rev = RELEASE_1 |
102 | > | Default tag is HEAD. |
103 | > | |
104 | > | javadoc |
105 | > | |
106 | > | Builds all the javadoc pages in the `doc' directory. |
107 | > | |
108 | > | buildutil |
109 | > | |
110 | > | (it is recommended you run a "make clean" first) |
111 | > | Builds a seperate JAR file, in `build' called `iscream-util.jar'. |
112 | > | This file contains just the uk.ac.ukc.iscream.util package for |
113 | > | use in other parts of the system, such as the clients. |
114 | > | |
115 | > | createtable |
116 | > | |
117 | > | Creates the ipacket table in the mySQL database. This is required for |
118 | > | the database side of the server. |
119 | > | |
120 | > | droptable |
121 | > | |
122 | > | Drops an ipacket table from the mySQL database if one exists. |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |