刚开始学习java的朋友一定很想知道除了在IDE中点击运行启动java外还可以怎样启动java程序。在这里我就我自己知道的将启动java的非IDE的方法做个介绍。
1.ant启动
ant启动的优点是跨平台,写好了xml文件在windows在linux上都可以跑,但是缺点就是必须安装ant包。如何安装ant请baidu相关文档出来。在这里给出一些基本的用法
a)新建一个build.xml文件,下面是一个实例,不做详细说明,如拷贝使用请修改响应的项
<?xml version="1.0" encoding="UTF-8"?> <project basedir="." default="run" name="BHO Video indexing"> <description>Buile the BHO video index</description> <!--Set the Global variable--> <property name="src" location="src" /> <property name="build" location="bin"/> <!-- ================================= 指定程序运行需要的classpath引用,一般不用更改 ================================= --> <path id="classpath"> <pathelement location="bin" /> <fileset dir="lib"> <include name="**/*.jar" /> </fileset> </path> <!-- Clear the directories of the out --> <target name="clear"> <echo>Delete the target directories</echo> <delete dir="bin" /> </target> <!-- ================================= target: init ================================= --> <target name="init" depends="clear" description="Create the bin directory"> <echo>Create the bin directory</echo> <mkdir dir="${build}"/> </target> <!-- ================================= target: compile ================================= --> <target name="compile" depends="init" description="Compile the project"> <javac srcdir="${src}" destdir="${build}" classpathref="/blog_article/classpath/index.html" /> <copy todir="bin"> <fileset dir="src"> <include name="**/*.properties"/> </fileset> </copy> </target> <!-- ================================= target: run ================================= --> <target name="run" depends="compile" description="run the project"> <java classpathref="/blog_article/classpath/index.html" fork="true" classname="video.info.Ku6 " > <jvmarg value="-Xms400M" /> <jvmarg value="-Xmx1024M" /> </java> </target> </project>
b)在命令行(终端)上输入ant run程序就可以启动,其中run是target的名称,请注意修改上面代码中标红的部分,这个事你打算运行程序相对于bin目录的包结构。其中run中的参数-Xms -Xmx可以省略,如果你的程序运行不会超过java虚拟机默认分配的内存。如果系统不能运行ant命令,请修改响应的环境变量(ANT_HOME).
2.直接控制台命令启动
2.1 windows平台上启动java(手动安装jdk)
@echo off set directory=E:\BenZhou\MIS\project\OpenJavaProg\ 替换成你程序的根目录 set jdkpath=D:\Java\jdk1.6.0_07\ 替换成你jdk的安装目录 set classp=%jdkpath%lib\dt.jar;%jdkpath%lib\tools.jar;%directory%bin;%directory%lib\commons-codec-1.3.jar;%directory%lib\commons-httpclient-3.1.jar;%directory%lib\commons-logging-1.1.jar;%directory%lib\commons-net-2.0.jar;%directory%lib\jaxen-core.jar;%directory%lib\jaxen-jdom.jar;%directory%lib\jdom.jar;%directory%lib\log4j-1.2.15.jar;%directory%lib\saxpath.jar 后面的jar部分请替换成你自己引用的jar,前面dt.jar tools.jar bin都是必须得 %jdkpath%\bin\java -classpath %classp% open.mis.uploader.MainEntrance
标红的是我给的标注,运行的时候请删除,将上面的存为bat批处理文件就可以直接运行了。
2.2 Linux平台上命令行启动java(手动安装jdk)
java -classpath /usr/java/jdk1.6.0_05/lib/dt.jar:/usr/java/jdk1.6.0_05/lib/tools.jar:/home/benzhou/OpenJavaProg/bin open.mis.test.GetLocalIPAddress
windows上分割包用的是;linux上用的是:这点是需要注意的。
2.3 Linux平台上shell脚本启动
#!/bin/bash #program: # This program is used to insert the info log to the database # The project is Controlled Short Video #history #2008/11/04 benzhou First Release #export the environment JAVA_HOME=/usr/local/java/ export JAVA_HOME export LANG=zh_CN.GB18030 #print the timestamp echo `date` " begin to build the white site" #run the program CLASSPATH=/program/bhocenter/bin:$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/dt.jar for jar in `ls /program/bhocenter/lib/*.jar` do CLASSPATH="$CLASSPATH":"$jar" done /usr/local/java/bin/java -classpath $CLASSPATH center.database.DownloadWhiteSite echo `date` " process complete"
上面的是通过脚本启动的,可以直接复制这个脚本将其中的主目录更改后即可,这个脚本会扫描lib目录,然后将所有的jar组织成命令启动需要的格式。
2.4Windows上在脚本中使用for循环来读取lib中的内容,这个我还没有搞定,如果有搞定的朋友,麻烦告诉我,多谢
根据国外媒体报道,Resco公司(一家致力于开发移动设备应用程序组件和工具的公司)日前发布了MobileForms Toolkit 2009 Volume 2。MobileForms是一款丰富的库和控件的集合工具包,这些控件和库是用来在Visual Studio环境下进行移动设备应用开发的。其中包括列表、网格 、图标和计划图等控件。
该工具针对微软Visual Studio 2008和微软.NET Compact Framework 3.5进行了优化。在该版本中添加了三个新的组件:
1.AdvancedCombo for .NET CF,它是一个可以在列表中进行条目选择的控件。该控件像是一个标准的单选框,只不过它多了一项对触摸滚动的支持。它的外观设计可自由定制:支持模版、支持图片、链接和按钮。模版可以从XML文件中存取。
2.NumbericUpDown for .NET CF,可以利用它实现数据输入的灵活控制,其最重要的功能是同时支持十进制和十六进制数。该控件提供了多种数据表示格式,而且为了满足视觉需要,它还支持Visual Customization(视觉样式自定义),比如可定制为Vista Style或Gradiant(渐变的)
3.TouchDateTimePicker for .NET CF,这是一个简单易用的时间捕获控件。它最重要的功能是支持触摸滚屏功能和自定义格式。
虽然在移动设备上输入数据很麻烦,但它确是移动应用程序必不可少的功能,Resco的工程师Peter Sartoris说。我们非常高兴的看到通过MobileForms Toolkit 2009 Volume 2中的这三个控件,让移动设备的数据输入变得简单了。
上述三个控件还可以与DetailView for .NET CF一同使用,这是一个在移动设备商创建输入表单的控件。
http://news.csdn.net/a/20090601/211654.html
根据HTTP 1.1协议规定,允许Web服务器临时改变资源的位置,也就是说你访问的资源存放在另外一个地址,这时候服务器返回的响应代码是302,而新的地址存放在Header中,Header的名称是Location。
在J2ME的开发中,由于移动终端设备差距很大,在处理302返回码的时候,设备之间的行为差异很大,有些设备不能正确地从响应中解析出Location字段,可能获得的Location字段为nul,如N70,还有在不同平台获取Location前的字母大小写也有不同,如有些WM上用HttpConnection.getHeaderField("location")无法获取地址,需大写L才能获取,所以在开发中最好拿两个,便于做兼容。
注:
你可从http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.3 了解更多内容。 Nokia N90/6600/6630/6680 获取302的location地址时为null。
WM有些设备获取的location时时要大写。
导读
J2ME如何通过cmwap直接访问互连网 http://fonter.iteye.com/blog/400868
J2ME开发中由WAP网关带来的cookie问题 http://fonter.iteye.com/blog/399105
安装JAD时提示JAD无效原因之一 http://fonter.iteye.com/blog/400888
J2ME网络交互之优化 http://fonter.iteye.com/blog/405137
解决Eclipse无法调试J2ME程序的配置方法 http://fonter.iteye.com/blog/405697
J2ME模拟器加载RMS时突然失效的原因 http://fonter.iteye.com/blog/407576
J2ME飞信协议分析(初稿) http://fonter.iteye.com/blog/408385