[置顶] Servlet - github

   运行环境(Windows x64): JDK(x86) + Application Server(x86)


    项目地址: https://github.com/xiaobin80/hlr_servlet    

[置顶] Servlet - github_第1张图片

FAQ:

        分发工具:ant介绍请参见《 ANT 实战》

ant

    1. 编译警告

    (1) JDK 版本
          官网默认为JDK8(http://www.oracle.com/technetwork/java/index.html).
          老版本JDK:http://www.oracle.com/technetwork/java/archive-139210.html
x86系列
序号 名称 最后版本 架构 备注
1 JDK5 1.5.22 x86  
2 JDK6 1.6.45 x86  
3 JDK7 1.7.80 x86  


JDK5: 1.5
JDK6: 1.6
JDK7: 1.7
JDK8: 1.8

compile:
    [javac] Compiling 3 source files to D:\v1.2\WebContent\WEB-INF\classes
    [javac] 警告: [options] ブートストラップ・クラスパスが-source 1.5と一緒に設定されていません
    [javac] 警告1個

         修改build.xml
<!-- compile -->
	<target name="compile" description="compile source">
		<javac destdir="${build.class.dir}" source="1.5" target="1.5" debug="true"
				deprecation="false" optimize="false" failonerror="true">
			<src path="${src.dir}"/>
			<classpath refid="master-classpath"/>
		</javac>
	</target>
        把1.5修改为当前使用JDK版本。

    (2) include ant runtime
        使用ant v1.8+时会出现此警告。
        
http://stackoverflow.com/questions/5103384/ant-warning-includeantruntime-was-not-set

http://ant.apache.org/manual/Tasks/javac.html

compile:
    [javac] D:\v1.2\build.xml:31: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 3 source files to D:\v1.2\WebContent\WEB-INF\classes


        修改build.xml
	<!-- compile -->
	<target name="compile" description="compile source">
		<javac destdir="${build.class.dir}" source="1.7" target="1.7" debug="true"
				deprecation="false" optimize="false" failonerror="true">
			<src path="${src.dir}"/>
			<classpath refid="master-classpath"/>
		</javac>
	</target>
        在javac行增加includeantruntime="true"属性
	<!-- compile -->
	<target name="compile" description="compile source">
		<javac destdir="${build.class.dir}" source="1.7" target="1.7" debug="true"
				deprecation="false" optimize="false" failonerror="true" includeantruntime="true">
			<src path="${src.dir}"/>
			<classpath refid="master-classpath"/>
		</javac>
	</target>


2. Tomcat

    详见《Windows下安装Tomcat》



V1.2

    1. 配置文件

        主要配置url、动态库、密码文件
        configP.xml
<?xml version="1.0" encoding="UTF-8"?>
  <servlet-config>
    <url>
      <url1>http://127.0.0.1:8080/carNumber/search</url1>
    </url>
    <lib-name>
      <lib-file1>D://war//xbfLibR.dll</lib-file1>
    </lib-name>
    <xbf-path>
      <xbf-file1>D://projects//sjz//demo01.xbf</xbf-file1>
    </xbf-path>
  </servlet-config>
  

    2. xbf

        xbf文件储存了数据库连接的几个重要要素:服务器、数据库、用户名和密码。

        生成xbf文件,请参照《 我的学习生涯(Delphi篇) - 08》,
        使用VS2005+生成可执行程序。

    (1) xbfLibR.dll
java.lang.UnsatisfiedLinkError: D:\war\xbfLibR.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
	java.lang.ClassLoader$NativeLibrary.load(Native Method)
	java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1938)
	java.lang.ClassLoader.loadLibrary(ClassLoader.java:1821)
	java.lang.Runtime.load0(Runtime.java:809)
	java.lang.System.load(System.java:1086)
	com.tdtc.xbf.ReadXbf.<init>(ReadXbf.java:23)
	PastTimeList.<clinit>(PastTimeList.java:63)
	sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	java.lang.reflect.Constructor.newInstance(Constructor.java:422)
	java.lang.Class.newInstance(Class.java:442)
	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:879)
	org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:617)
	org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1778)
	java.lang.Thread.run(Thread.java:745)

      A: 使用32位的JRE和应用服务器(例如,Tomcat)


java.lang.UnsatisfiedLinkError: com.tdtc.xbf.ReadXbf.readRecordMsSql(ILjava/lang/String;)Ljava/lang/String;
	com.tdtc.xbf.ReadXbf.readRecordMsSql(Native Method)
	PastTimeList.<clinit>(PastTimeList.java:64)
	sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	java.lang.reflect.Constructor.newInstance(Constructor.java:526)
	java.lang.Class.newInstance(Class.java:379)
	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:879)
	org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:617)
	org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1778)
	java.lang.Thread.run(Thread.java:745)

    A: JNI实现类包名错误.
       

你可能感兴趣的:([置顶] Servlet - github)