Eclipse环境搭建(快速)#

Strato的最低运行要求:

Java development kit(JDK) 1.8

Apache Tomcat 8.x

Apache log4j 1.2

为了简化配置Eclipse和Tomcat的步骤,我们预配了一个集成的开发目录集,可以帮助开发者省去很多发布的动作,建议采用。

一、安装Eclipse#

可到Eclipse官网(eclipse.org)下载最新的Eclipse版本,为了后续开发方便,推荐下载”Eclipse IDE for Java EE Developers”版本。 下载后将Eclipse解压,并运行”Eclipse.exe”(Windows)可执行文件,启动Eclipse。

二、下载Strato快速开发环境#

到下载中心下载Strato-allinone.zip。解压到磁盘。


Strato-allinone目录结构说明:

路径说明
/ Strato-allinone修改自一个标准Tomcat目录,其子目录大部分都符合Tomcat管理规范。
/bin 可执行目录,可执行startup.sh或startup.bat启动服务
/conf 配置目录,Strato在默认配置上增加了Encoding、Accesslog、Cluster等配置。
/eclipse-workspace Eclipse工作目录,可直接指定该目录为Workspace。并在此目录下开发。手工发布独立运行环境时,只需删除此目录即可。也可使用Ops工具实现集成发布。
/lib Classpath目录,除Tomcat自带jar包外,还包含log4j配置文件、log4j.jar、ROOT.properties及常用jdbc驱动包。
/logs 日志文件目录,未修改。
/plugins Strato repository目录。执行Ant jar-all时,所有开发的bundle将发布至该目录下。
/temp 临时文件目录。
/webapps Webapp发布目录。strato-workspace/webapp工程的任何改动会自动打包至该目录下的ROOT.war。
/work 工作目录,未修改。

工作原理如下图:


解压后直接在Eclipse中切换到Strato-allinone/eclipse-workspace,可见到webapp工程。

webapp/build.xml打包任务列举如下:

Target描述
new-project 创建新Bundle向导
jar-all 将所有bundle打包至本地repository(默认为../plugins目录)
war 将webapp工程导出为ROOT.war包
zip 克隆webapp工程
当webapp内容有变化时,将自动触发内置打包功能,将webapp打包至strato-allinone/webapps/ROOT.war,并将ROOT.properties复制到strato-allinone/lib/ROOT.properties

Eclipse环境搭建(定制)#

Strato的最低运行要求:

Java development kit(JDK) 1.8

Apache Tomcat 8.x

Apache log4j 1.2

一、安装Eclipse#

可到Eclipse官网(eclipse.org)下载最新的Eclipse版本,为了后续开发方便,推荐下载”Eclipse IDE for Java EE Developers”版本。
下载后将Eclipse解压,并运行”Eclipse.exe”(Windows)可执行文件,启动Eclipse。

二、配置Workspace#

  • 启动Eclipse并创建Workspace
由于Strato的模块化特性,通常建议一个项目使用一个Workspace。开发者需要自行规划Workspace目录。建议采用多级目录存储多个项目。

例如,项目数较少时,可采用

d:/workspaces/{workspace}

的格式创建目录;

项目数较多时,可采用

d:/workspaces/{system}/${workspace}

的目录格式创建。


  • 获得webapp
可以到下载页获取最新的ROOT.zip,解压并导入到当前workspace。


  • 配置OSGi
在Eclipse选择菜单Window->Preference->Plug-in Development->Target Platform

单机Add,





分别添加:

  • ${workspace_loc}/webapp/WEB-INF/3rdbundles
  • ${workspace_loc}/webapp/WEB-INF/bundles
  • ${workspace_loc}/webapp/WEB-INF/devlib
  • d:\repository\strato.com\strato(根据实际情况选择repository目录)

点击Finish完成。并把strato设为默认Platform。


点击Finish完成。并把strato设为默认Platform。

到此OSGi环境设置完毕。

注:下载中心提供标准集成版Tomcat,内含strato ROOT.war、properties文件及常用bundles,开箱即用,并且通过多个项目生成环境验证。使用集成版Tomcat可省掉第三步和第五步的大部分操作,推荐使用。参见Eclipse环境搭建(快速)

三、配置Repository#

在下载中心下载repository.zip,并解压到磁盘。
  • 运行gui生成bundles.xml
运行repository目录下的/.deploy/gui.bat,开启Bundle下载管理器。

至少选中strato.repository.bootstratp.*和strato.repository.monitor.*,然后点击”Save”。

可以查看.deploy/bundles.xml了解更多信息。


关于.deploy的详细介绍参见部署工具参考。

  • 下载bundles
运行.deploy/download.bat,将bundles.xml中配置的bundle及其依赖bundle下载到repository目录。

  • 配置OSGi环境

四、创建并发布Bundle#

在Eclipse中打开Ant视图,将webapp/build.xml拖入其中。

Ant Task详解:
Target描述
new-project 创建新Bundle向导
jar-all 将所有bundle打包至本地repository(默认为../plugins目录)
war 将webapp工程导出为ROOT.war包
zip 克隆webapp工程
当webapp内容有变化时,将自动触发内置打包功能,将webapp打包至strato-allinone/webapps/ROOT.war,并将ROOT.properties复制到strato-allinone/lib/ROOT.properties
  • 修改包前缀
假设新项目的包名前缀为com.test,编辑webapp/build.properties,配置如下:

修改
 template.project.basename=com.test 
  • 创建新bundle
双击运行new-project目标,按提示完成新bundle的创建。



输入包名(不含包前缀)

输入版本号

生成新工程

导入新工程

五、配置并启动Tomcat#

一个Strato单机Tomcat运行环境通常需要部署war包、repository和properties文件。如下图所示:

  • ROOT.war
ROOT.war是strato的核心war包,是J2EE和OSGi容器的桥梁。部署时可直接放于%CATALINA_HOME%/webapps下。
  • ROOT.properties
ROOT.properties定义了Strato运行时的常见参数,例如:

实际运行时,开发者可以自己定义变量值,该文件的变量值可以通过GlobalEnvironment类获取,也可以在大部分注解中使用${}占位符引用。详见环境变量。
  • log4j.jar
为了兼容一些自带log4j.jar 的J2EE容器(如Jboss),在打包ROOT.war时并未包含log4j.jar文件,部署Tomcat需要手工将log4j.jar复制到%CATALINA_HOME%/lib目录。
  • 其他jar文件
若在运行时还需要其他第三方文件(如jdbc驱动),可放于%CATALINA_HOME%/lib目录下
  • repository
本文第三部分已经介绍了如何使用.deploy工具下载repository。 repository的位置通常在ROOT.properties中指定(${dir.repository}),若在properties中未明确指定dir.repository,则将取默认值为当前Tomcat目录的/strato子目录(%CATALINA_HOME%/strato),此场景常见于生产环境部署。 将各文件复制到对应的目录,并启动Tomcat(运行bin/startup.bat)即可。 至此Eclipse+Tomcat+Strato开发环境搭建完成。接下来可以开发第一个Web应用,查看文档

Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
png
10.png 24.9 kB 1 16-May-2017 18:41 Jarez
png
11.png 13.9 kB 1 16-May-2017 18:41 Jarez
png
12.png 32.6 kB 1 16-May-2017 18:45 Jarez
png
13.png 39.3 kB 1 16-May-2017 18:45 Jarez
png
14.png 31.8 kB 1 16-May-2017 18:45 Jarez
png
15.png 5.4 kB 1 16-May-2017 18:45 Jarez
png
16.png 9.0 kB 1 16-May-2017 18:45 Jarez
png
17.png 43.1 kB 1 16-May-2017 18:45 Jarez
png
18.png 8.4 kB 1 16-May-2017 18:53 Jarez
png
19.png 4.0 kB 1 16-May-2017 18:53 Jarez
png
2.png 22.9 kB 1 16-May-2017 18:26 Jarez
png
20.png 5.4 kB 1 16-May-2017 18:53 Jarez
png
21.png 2.9 kB 1 16-May-2017 18:53 Jarez
png
22.png 21.2 kB 1 16-May-2017 18:53 Jarez
png
23.png 10.0 kB 1 16-May-2017 18:53 Jarez
png
24.png 59.0 kB 1 16-May-2017 18:53 Jarez
png
25.png 12.2 kB 1 16-May-2017 18:53 Jarez
png
3.png 55.4 kB 1 16-May-2017 18:26 Jarez
png
4.png 68.2 kB 1 16-May-2017 18:26 Jarez
png
5.png 8.3 kB 1 16-May-2017 18:41 Jarez
png
6.png 8.8 kB 1 16-May-2017 18:41 Jarez
png
7.png 27.9 kB 1 16-May-2017 18:41 Jarez
png
8.png 33.2 kB 1 16-May-2017 18:41 Jarez
png
9.png 23.8 kB 1 16-May-2017 18:41 Jarez
« This page (revision-20) was last changed on 17-May-2017 10:12 by Jarez