运行环境(Windows x64): JDK(x86) + Application Server(x86)
项目地址:
FAQ:
分发工具:ant介绍请参见《ANT 实战》
ant
1. 编译警告
(1) JDK 版本
官网默认为JDK8().
老版本JDK:
x86系列
序号
|
名称
|
最后版本
|
架构
|
备注
|
1
|
JDK5
|
|
x86
|
|
2
|
JDK6
|
|
x86
|
|
3
|
JDK7
|
|
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+时会出现此警告。
-
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
省略。。。
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 not 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实现类包名错误.
阅读(517) | 评论(0) | 转发(0) |