• OSGi 学习(二)


    上一篇说了很多虚的东西,现在说点别的。

    OSGi系统的独立环境下的项目结构以及启动脚本。

    先说项目结构,基于equinox的OSGi容器的项目结构如下所示:

    image

    bin中定义启动脚本,停止脚本之类的。

    configuration定义配置文件,比如:config.ini,log4j.properties等配置文件。

    environment包含了一些基础bundle,比如:spring系列;log4j等。

    platform是基于OSGi上的,做二次开发的bundle。

    这里面比较麻烦的就是,osgi这个bundle最好和configuration在同级目录下,这样生成的缓存文件就在configuration中。

    再说说启动脚本。

    直接上代码吧:

    @echo off

    if "%JAVA_HOME%" == "" (
        echo The JRE was not found in directory %JAVA_HOME%. ^(JAVA_HOME^)
        echo Please edit your environment and set the JAVA_HOME
        echo variable to point to the root directory of your Java installation.
        goto :EOF
    )

    set MEM_ARGS=-Xms512m -Xmx512m -Xmn256M -XX:PermSize=128m -XX:MaxPermSize=128m
    set JAVA_OPTIONS=%JAVA_OPTIONS% -XX:+UseParNewGC -XX:ParallelGCThreads=5 -XX:CMSFullGCsBeforeCompaction=5 -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=40 -XX:+UseAdaptiveSizePolicy -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass

    rem set CLASSPATH=%CLASSPATH%
    rem "%JAVA_HOME%injava" %MEM_ARGS% %JAVA_OPTIONS% -Dorg.osgi.framework.bootdelegation=javax.*,org.ietf.*,org.omg.*,org.w3c.*,org.xml.*,sun.*,com.sun.* -jar equinox.jar -console

    set CLASSPATH=%CLASSPATH%;../org.eclipse.osgi-3.9.1.v20130814-1242.jar
    set WEAVING_OPTIONS=-Daj.weaving.verbose=true -Dorg.aspectj.weaver.showWeaveInfo=true -Dorg.aspectj.osgi.verbose=true
    "%JAVA_HOME%injava" %MEM_ARGS% %JAVA_OPTIONS% -classpath %CLASSPATH% %WEAVING_OPTIONS% -Dorg.osgi.framework.bootdelegation=javax.*,java.*,org.ietf.*,org.omg.*,org.w3c.*,org.xml.*,sun.*,com.sun.* org.eclipse.core.runtime.adaptor.EclipseStarter -console

    :EOF

    简单说说bat的语法。

    rem是个注释命令,该命令后的内容在程序执行的时候将不被显示与执行。

    echo是一个回显命令,主要参数有off(不显示)和on(显示),一般用其输出一个特定的消息。

    符号(@):关闭当前行的回显。

  • 相关阅读:
    GitHub上如何创建组织?
    windows中使用Git如何解决文件冲突?
    GitHub上如何删除代码仓库?
    并发编程模型和访问控制
    大数据征信的应用和启示:ZestFinance的基于大数据的信用评估技术
    Hadoop的Python框架指南
    Redis+Django(Session,Cookie、Cache)的用户系统
    如何使你的Ajax应用内容可让搜索引擎爬行
    Web运营手记
    全屏slider--swiper
  • 原文地址:https://www.cnblogs.com/asfeixue/p/3629169.html
Copyright © 2020-2023  润新知