fixed bootstrap
This commit is contained in:
parent
afe3282495
commit
c1b6740e49
7 changed files with 67 additions and 54 deletions
56
akka.iws
56
akka.iws
|
|
@ -6,23 +6,11 @@
|
||||||
</component>
|
</component>
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="212ccd86-01aa-4780-a2f0-0d130be5abd2" name="Test" comment="">
|
<list default="true" id="212ccd86-01aa-4780-a2f0-0d130be5abd2" name="Test" comment="">
|
||||||
<change type="DELETED" beforePath="$PROJECT_DIR$/lib/voldemort-contrib-0.4a.jar" afterPath="" />
|
|
||||||
<change type="DELETED" beforePath="$PROJECT_DIR$/lib/mina-integration-scala-2.0.0-M2-SNAPSHOT.jar" afterPath="" />
|
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/kernel/src/main/scala/Kernel.scala" afterPath="$PROJECT_DIR$/kernel/src/main/scala/Kernel.scala" />
|
|
||||||
<change type="DELETED" beforePath="$PROJECT_DIR$/lib/voldemort-0.4a.jar" afterPath="" />
|
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/fun-test-java/src/test/java/se/scalablesolutions/akka/api/ActiveObjectGuiceConfiguratorTest.java" afterPath="$PROJECT_DIR$/fun-test-java/src/test/java/se/scalablesolutions/akka/api/ActiveObjectGuiceConfiguratorTest.java" />
|
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/kernel/src/test/scala/ThreadBasedDispatcherTest.scala" afterPath="$PROJECT_DIR$/kernel/src/test/scala/ThreadBasedDispatcherTest.scala" />
|
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/akka.iws" afterPath="$PROJECT_DIR$/akka.iws" />
|
|
||||||
<change type="DELETED" beforePath="$PROJECT_DIR$/fun-test-java/src/test/java/se/scalablesolutions/akka/api/NioTest.java" afterPath="" />
|
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/bin/start-akka-server.sh" afterPath="$PROJECT_DIR$/bin/start-akka-server.sh" />
|
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/fun-test-java/src/test/java/se/scalablesolutions/akka/api/RestTest.java" afterPath="$PROJECT_DIR$/fun-test-java/src/test/java/se/scalablesolutions/akka/api/RestTest.java" />
|
|
||||||
<change type="DELETED" beforePath="$PROJECT_DIR$/lib/mina-core-2.0.0-M2-SNAPSHOT.jar" afterPath="" />
|
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/kernel/src/main/scala/Boot.scala" afterPath="$PROJECT_DIR$/kernel/src/main/scala/Boot.scala" />
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/kernel/src/main/scala/Boot.scala" afterPath="$PROJECT_DIR$/kernel/src/main/scala/Boot.scala" />
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/kernel/src/main/scala/actor/ActiveObject.scala" afterPath="$PROJECT_DIR$/kernel/src/main/scala/actor/ActiveObject.scala" />
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/kernel/src/main/scala/Kernel.scala" afterPath="$PROJECT_DIR$/kernel/src/main/scala/Kernel.scala" />
|
||||||
<change type="DELETED" beforePath="$PROJECT_DIR$/kernel/src/main/scala/reactor/ThreadPoolBuilder.scala" afterPath="" />
|
<change type="DELETED" beforePath="$PROJECT_DIR$/lib/scala-library-2.7.3.jar" afterPath="" />
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/kernel/src/main/scala/reactor/EventBasedThreadPoolDispatcher.scala" afterPath="$PROJECT_DIR$/kernel/src/main/scala/reactor/EventBasedThreadPoolDispatcher.scala" />
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/akka.iws" afterPath="$PROJECT_DIR$/akka.iws" />
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/kernel/src/main/scala/actor/Actor.scala" afterPath="$PROJECT_DIR$/kernel/src/main/scala/actor/Actor.scala" />
|
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/bin/start-akka-server.sh" afterPath="$PROJECT_DIR$/bin/start-akka-server.sh" />
|
||||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/kernel/src/test/scala/JerseySpec.scala" afterPath="$PROJECT_DIR$/kernel/src/test/scala/JerseySpec.scala" />
|
|
||||||
</list>
|
</list>
|
||||||
<list readonly="true" id="6e842704-fac6-40e9-8a67-d02385f87db9" name="Default" comment=" # Brief commit desciption here # Full commit description here (comment lines starting with '#' will not be included) " />
|
<list readonly="true" id="6e842704-fac6-40e9-8a67-d02385f87db9" name="Default" comment=" # Brief commit desciption here # Full commit description here (comment lines starting with '#' will not be included) " />
|
||||||
<ignored path="akka.iws" />
|
<ignored path="akka.iws" />
|
||||||
|
|
@ -171,7 +159,7 @@
|
||||||
<file leaf-file-name="Kernel.scala" pinned="false" current="false" current-in-tab="false">
|
<file leaf-file-name="Kernel.scala" pinned="false" current="false" current-in-tab="false">
|
||||||
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/Kernel.scala">
|
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/Kernel.scala">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state line="69" column="31" selection-start="1854" selection-end="1854" vertical-scroll-proportion="0.0">
|
<state line="51" column="46" selection-start="1482" selection-end="1482" vertical-scroll-proportion="0.0">
|
||||||
<folding />
|
<folding />
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
|
|
@ -180,16 +168,16 @@
|
||||||
<file leaf-file-name="Boot.scala" pinned="false" current="false" current-in-tab="false">
|
<file leaf-file-name="Boot.scala" pinned="false" current="false" current-in-tab="false">
|
||||||
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/Boot.scala">
|
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/Boot.scala">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state line="19" column="86" selection-start="680" selection-end="680" vertical-scroll-proportion="0.0">
|
<state line="10" column="190" selection-start="203" selection-end="203" vertical-scroll-proportion="0.0">
|
||||||
<folding />
|
<folding />
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
</file>
|
</file>
|
||||||
<file leaf-file-name="CassandraNode.scala" pinned="false" current="true" current-in-tab="true">
|
<file leaf-file-name="CassandraNode.scala" pinned="false" current="false" current-in-tab="false">
|
||||||
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/state/CassandraNode.scala">
|
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/state/CassandraNode.scala">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state line="20" column="13" selection-start="536" selection-end="536" vertical-scroll-proportion="0.015429122">
|
<state line="20" column="13" selection-start="536" selection-end="536" vertical-scroll-proportion="0.0">
|
||||||
<folding />
|
<folding />
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
|
|
@ -204,10 +192,10 @@
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
</file>
|
</file>
|
||||||
<file leaf-file-name="pom.xml" pinned="false" current="false" current-in-tab="false">
|
<file leaf-file-name="pom.xml" pinned="false" current="true" current-in-tab="true">
|
||||||
<entry file="file://$PROJECT_DIR$/kernel/pom.xml">
|
<entry file="file://$PROJECT_DIR$/kernel/pom.xml">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state line="2" column="158" selection-start="219" selection-end="219" vertical-scroll-proportion="0.0">
|
<state line="2" column="158" selection-start="219" selection-end="219" vertical-scroll-proportion="0.030858245">
|
||||||
<folding />
|
<folding />
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
|
|
@ -249,8 +237,8 @@
|
||||||
<option value="$PROJECT_DIR$/kernel/src/test/scala/JerseySpec.scala" />
|
<option value="$PROJECT_DIR$/kernel/src/test/scala/JerseySpec.scala" />
|
||||||
<option value="$PROJECT_DIR$/kernel/src/main/scala/reactor/EventBasedThreadPoolDispatcher.scala" />
|
<option value="$PROJECT_DIR$/kernel/src/main/scala/reactor/EventBasedThreadPoolDispatcher.scala" />
|
||||||
<option value="$PROJECT_DIR$/fun-test-java/src/test/java/se/scalablesolutions/akka/api/RestTest.java" />
|
<option value="$PROJECT_DIR$/fun-test-java/src/test/java/se/scalablesolutions/akka/api/RestTest.java" />
|
||||||
<option value="$PROJECT_DIR$/kernel/src/main/scala/Boot.scala" />
|
|
||||||
<option value="$PROJECT_DIR$/kernel/src/main/scala/Kernel.scala" />
|
<option value="$PROJECT_DIR$/kernel/src/main/scala/Kernel.scala" />
|
||||||
|
<option value="$PROJECT_DIR$/kernel/src/main/scala/Boot.scala" />
|
||||||
</list>
|
</list>
|
||||||
</option>
|
</option>
|
||||||
</component>
|
</component>
|
||||||
|
|
@ -1716,9 +1704,16 @@
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/state/CassandraNode.scala">
|
||||||
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
|
<state line="20" column="13" selection-start="536" selection-end="536" vertical-scroll-proportion="0.0">
|
||||||
|
<folding />
|
||||||
|
</state>
|
||||||
|
</provider>
|
||||||
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/Kernel.scala">
|
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/Kernel.scala">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state line="69" column="31" selection-start="1854" selection-end="1854" vertical-scroll-proportion="0.0">
|
<state line="51" column="46" selection-start="1482" selection-end="1482" vertical-scroll-proportion="0.0">
|
||||||
<folding />
|
<folding />
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
|
|
@ -1730,23 +1725,16 @@
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/kernel/pom.xml">
|
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
|
||||||
<state line="2" column="158" selection-start="219" selection-end="219" vertical-scroll-proportion="0.0">
|
|
||||||
<folding />
|
|
||||||
</state>
|
|
||||||
</provider>
|
|
||||||
</entry>
|
|
||||||
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/Boot.scala">
|
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/Boot.scala">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state line="19" column="86" selection-start="680" selection-end="680" vertical-scroll-proportion="0.0">
|
<state line="10" column="190" selection-start="203" selection-end="203" vertical-scroll-proportion="0.0">
|
||||||
<folding />
|
<folding />
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
</entry>
|
</entry>
|
||||||
<entry file="file://$PROJECT_DIR$/kernel/src/main/scala/state/CassandraNode.scala">
|
<entry file="file://$PROJECT_DIR$/kernel/pom.xml">
|
||||||
<provider selected="true" editor-type-id="text-editor">
|
<provider selected="true" editor-type-id="text-editor">
|
||||||
<state line="20" column="13" selection-start="536" selection-end="536" vertical-scroll-proportion="0.015429122">
|
<state line="2" column="158" selection-start="219" selection-end="219" vertical-scroll-proportion="0.030858245">
|
||||||
<folding />
|
<folding />
|
||||||
</state>
|
</state>
|
||||||
</provider>
|
</provider>
|
||||||
|
|
|
||||||
|
|
@ -1,27 +1,40 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
if [ $# -gt 1 ];
|
VERSION=0.1
|
||||||
then
|
|
||||||
echo 'USAGE: bin/start-akka-server.sh [akka_home]'
|
#if [ $# -gt 1 ];
|
||||||
exit 1
|
#then
|
||||||
fi
|
# echo 'USAGE: bin/start-akka-server.sh'
|
||||||
|
# exit 1
|
||||||
|
#fi
|
||||||
|
|
||||||
|
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
|
||||||
|
|
||||||
BASE_DIR=$(dirname $0)/..
|
BASE_DIR=$(dirname $0)/..
|
||||||
|
|
||||||
echo 'Starting Akka Kernel from directory' $BASE_DIR
|
echo 'Starting Akka Kernel from directory' $BASE_DIR
|
||||||
|
|
||||||
for FILE in $BASE_DIR/lib/*.jar;
|
echo 'Resetting persistent storage in' $BASE_DIR/storage
|
||||||
do
|
rm -rf $BASE_DIR/storage
|
||||||
CLASSPATH=$CLASSPATH:$FILE
|
mkdir $BASE_DIR/storage
|
||||||
done
|
mkdir $BASE_DIR/storage/bootstrap
|
||||||
CLASSPATH=$CLASSPATH:$BASE_DIR/config
|
mkdir $BASE_DIR/storage/callouts
|
||||||
|
mkdir $BASE_DIR/storage/commitlog
|
||||||
|
mkdir $BASE_DIR/storage/data
|
||||||
|
mkdir $BASE_DIR/storage/system
|
||||||
|
|
||||||
CLASSPATH=$CLASSPATH:$BASE_DIR/kernel/target/classes
|
CLASSPATH=$CLASSPATH:$BASE_DIR/kernel/target/classes
|
||||||
|
#CLASSPATH=$CLASSPATH:$BASE_DIR/dist/akka-kernel-$VERSION.jar
|
||||||
|
CLASSPATH=$CLASSPATH:$BASE_DIR/lib/scala-library-2.7.5.jar
|
||||||
|
CLASSPATH=$CLASSPATH:$BASE_DIR/lib/configgy-1.3.jar
|
||||||
|
CLASSPATH=$CLASSPATH:$BASE_DIR/config
|
||||||
|
|
||||||
STORAGE_OPTS=" \
|
STORAGE_OPTS=" \
|
||||||
-Dcassandra \
|
-Dcassandra \
|
||||||
-Dstorage-config=$BASE_DIR/config/ \
|
-Dstorage-config=$BASE_DIR/config/ \
|
||||||
-Dpidfile=akka.pid"
|
-Dpidfile=akka.pid"
|
||||||
|
|
||||||
|
# To have Akka dump the generated classes, add the '-Daspectwerkz.transform.dump=*' option and it will dump classes to $BASE_DIR/_dump
|
||||||
JVM_OPTS=" \
|
JVM_OPTS=" \
|
||||||
-server \
|
-server \
|
||||||
-Xdebug \
|
-Xdebug \
|
||||||
|
|
@ -40,4 +53,7 @@ JVM_OPTS=" \
|
||||||
-Dcom.sun.management.jmxremote.ssl=false \
|
-Dcom.sun.management.jmxremote.ssl=false \
|
||||||
-Dcom.sun.management.jmxremote.authenticate=false"
|
-Dcom.sun.management.jmxremote.authenticate=false"
|
||||||
|
|
||||||
/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/bin/java $JVM_OPTS $STORAGE_OPTS -cp $CLASSPATH se.scalablesolutions.akka.Boot se.scalablesolutions.akka.kernel.Kernel ${1}
|
echo "Starting up with options:
|
||||||
|
"$JAVA_HOME/bin/java $JVM_OPTS $STORAGE_OPTS -cp $CLASSPATH se.scalablesolutions.akka.Boot se.scalablesolutions.akka.kernel.Kernel ${1}
|
||||||
|
|
||||||
|
$JAVA_HOME/bin/java $JVM_OPTS $STORAGE_OPTS -cp $CLASSPATH se.scalablesolutions.akka.Boot se.scalablesolutions.akka.kernel.Kernel ${1}
|
||||||
|
|
|
||||||
|
|
@ -16,25 +16,33 @@ import kernel.util.Logging
|
||||||
*/
|
*/
|
||||||
object Boot extends Logging {
|
object Boot extends Logging {
|
||||||
|
|
||||||
val HOME = try { System.getenv("AKKA_HOME") } catch { case e: NullPointerException => throw new IllegalStateException("AKKA_HOME system variable needs to be set") }
|
val HOME = try { System.getenv("AKKA_HOME") } catch { case e: NullPointerException => throw new IllegalStateException("AKKA_HOME system variable needs to be set. Should point to the root of the Akka distribution.") }
|
||||||
val CLASSES = HOME + "/kernel/target/classes" // FIXME fix classes dir for dist wrap
|
val CLASSES = HOME + "/kernel/target/classes" // FIXME remove for dist
|
||||||
val LIB = HOME + "/lib"
|
val LIB = HOME + "/lib"
|
||||||
val CONFIG = HOME + "/config"
|
val CONFIG = HOME + "/config"
|
||||||
|
val DEPLOY = HOME + "/deploy"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Assumes that the AKKA_HOME directory is set with /config, /classes and /lib beneath it holding files and jars.
|
* Assumes that the AKKA_HOME directory is set with /bin, /config, /deploy and /lib beneath it holding config files and jars.
|
||||||
* Thus:
|
* Thus:
|
||||||
* $AKKA_HOME
|
|
||||||
* $AKKA_HOME/bin
|
* $AKKA_HOME/bin
|
||||||
* $AKKA_HOME/classes
|
|
||||||
* $AKKA_HOME/lib
|
|
||||||
* $AKKA_HOME/config
|
* $AKKA_HOME/config
|
||||||
|
* $AKKA_HOME/lib
|
||||||
|
* $AKKA_HOME/deploy
|
||||||
*/
|
*/
|
||||||
def main(args: Array[String]): Unit = {
|
def main(args: Array[String]): Unit = {
|
||||||
log.info("Bootstrapping Akka server from AKKA_HOME=%s", HOME)
|
log.info("Bootstrapping Akka server from [AKKA_HOME=%s]", HOME)
|
||||||
|
|
||||||
|
val LIB_DIR = new File(LIB)
|
||||||
|
val DEPLOY_DIR = new File(DEPLOY)
|
||||||
|
if (!LIB_DIR.exists) { log.error("Could not find a lib directory with all the akka dependencies at [" + DEPLOY + "]"); System.exit(-1) }
|
||||||
|
if (!DEPLOY_DIR.exists) { log.error("Could not find a deploy directory at [" + DEPLOY + "]"); System.exit(-1) }
|
||||||
|
|
||||||
|
val toDeploy = for (f <- DEPLOY_DIR.listFiles().toArray.toList.asInstanceOf[List[File]]) yield f.toURL
|
||||||
|
if (toDeploy.isEmpty) log.warning("No jars could be found in the [" + DEPLOY + "] directory, nothing to deploy")
|
||||||
|
val libs = for (f <- LIB_DIR.listFiles().toArray.toList.asInstanceOf[List[File]]) yield f.toURL
|
||||||
|
val urls = new File(CLASSES).toURL :: (libs ::: toDeploy)
|
||||||
|
|
||||||
val libs = for (f <- new File(LIB).listFiles().toArray.toList.asInstanceOf[List[File]]) yield f.toURL
|
|
||||||
val urls = new File(CLASSES).toURL :: libs
|
|
||||||
val loader = new URLClassLoader(urls.toArray, ClassLoader.getSystemClassLoader.getParent)
|
val loader = new URLClassLoader(urls.toArray, ClassLoader.getSystemClassLoader.getParent)
|
||||||
val mainClass = loader.loadClass(args(0))
|
val mainClass = loader.loadClass(args(0))
|
||||||
val mainMethod = mainClass.getMethod("main", Array(args.getClass): _*)
|
val mainMethod = mainClass.getMethod("main", Array(args.getClass): _*)
|
||||||
|
|
|
||||||
|
|
@ -49,6 +49,7 @@ object Kernel extends Logging {
|
||||||
//startJersey
|
//startJersey
|
||||||
//startZooKeeper
|
//startZooKeeper
|
||||||
//startVoldemort
|
//startVoldemort
|
||||||
|
log.info("Akka kernel started successfully")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Binary file not shown.
BIN
lib/configgy-1.3.jar
Normal file
BIN
lib/configgy-1.3.jar
Normal file
Binary file not shown.
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue