zoukankan      html  css  js  c++  java
  • ICTCLAS 2009 JNI_32 遇到MyEclipse Web Project下无法运行

    今天在MyEclipse 中,创建 Java Project 测试 Windows_JNI_32 包中的 sample通过。

    但是,在MyEclipse中创建WebProject 测试时出现问题,

    Cannot initialize ICTCLAS.I3S.AC.ICTCLAS30. 

    在网上找到两篇文章

    文章一:  http://topic.csdn.net/t/20060810/23/4941686.html#

    我在项目中使用ICTCLAS   JavaJNI包进行分词,在部署到tomcat5.5之后,我发现ICTCLAS的Data文件夹在程序中无法找到,ICTCLAS.dll放在tomcat\bin目录下,我试过把Data目录也放到这里,可是依然找不到这个目录里面的文件,我也试过把这个目录放在web-inf,classes目录下,都不行,请教高手这个data目录到底应该放在哪里?

    文章二:http://topic.csdn.net/t/20060812/15/4945156.html

    我的webapp用到一个dll,这个dll使用了一个Data目录中的文件,我把dll和这个Data文件夹都放到了tomcat的bin目录下,dll文件可以被webapp找到,可是这个Data目录却不行,dll找不到这个Data目录以及其中的文件。我也尝试过将Data文件夹放到classes目录,WEB-INF目录下,可是都不行?该怎么办啊??谢谢大家~~~解决之后在加100分 问题点数:100、回复次数:13Top

    1 楼yaray(雅睿,生活在别处)回复于 2006-08-12 16:23:33 得分 10

    JNI问题,你可以在网上找找,可以找到很多答案的.Top

    2 楼theforever(碧海情天)回复于 2006-08-12 17:02:30 得分 10

    DLL使用的是绝对路径吧Top

    3 楼huihui0103()回复于 2006-08-12 17:08:17 得分 5

    仔细查查JNITop

    4 楼will123()回复于 2006-08-12 17:14:44 得分 5

    学习Top

    5 楼ykzhujiang(朱朱)回复于 2006-08-12 19:31:59 得分 0

    dll使用的肯定不是决对路径,我试过的。楼上的大哥们能具体说说嘛,到底是什么JNI问题Top

    6 楼ykzhujiang(朱朱)回复于 2006-08-13 20:10:19 得分 0

    UPTop

    7 楼feigme(泡沫微笑。o 0)回复于 2006-08-13 20:15:04 得分 5

    关注  
      UP  
      JFTop

    8 楼cczmf(拔刀相助!!! 吼吼)回复于 2006-08-13 20:57:54 得分 15

    WEB-INF文件夹必须紧跟在发布的文件夹下,中间不能有多重文件夹,WEB-INF下放的是classes文件夹,classes文件夹下是***文件夹,他下面才是***.class文件,你也要在WEB-INF下放上web.xml文件,这样试试看,也许能行Top

    9 楼haitao8686()回复于 2006-08-13 22:10:54 得分 15

    文件目录    
      --WEB-INF  
          ----LIB  
          ----CLASSESTop

    10 楼theforever(碧海情天)回复于 2006-08-14 09:43:41 得分 15

    如果Data目录是可以任意放置并用参数传递给DLL的,可以把它放在WEB应用的目录或其它子目录下试试.  
       
      正常讲,DLL使用时应该是在服务器端调用,然后把结果返回客户端,使用的应该是服务端本身的文件操作机制.但有的应用好像也不尽如此,也有用服务器URL地址的.你得看看你这种到底是哪种情形.Top

    11 楼zhmt(孜风)回复于 2006-08-14 09:57:58 得分 10

    up!  
       
      mark!Top

    12 楼ykzhujiang(朱朱)回复于 2006-08-14 12:08:31 得分 0

    谢谢楼上的大哥们,问题暂时解决了,是这个样子的:  
      这个问题归结起来是工作目录的问题。这个程序在本地运行是可以找到Data目录的。我发现只要把dll和Data文件夹放在工作目录(working   directory)下面就可以运行成功。因此,在Tomcat下我把dll文件放在了Tomcat根目录下,然后把Data文件夹也放在了这个根目录下,同时把java.library.path也设置到Tomcat的根目录,一切终于搞定了。  
      可是这引发了一个新的问题,那就是如何改变工作目录呢?比如我只想把这个文件放在我自己的webapp下面,那我应该怎样做呢。  
      我发现通过-Duser.dir=...的方式好像并不能改变工作目录,我在sun网站的bug列表里面也发现有人提出类似的问题。http://bugs.sun.com/bugdatabase/view_bug.do:YfiG?bug_id=4030989  
      不知道现在这个问题解决了没有,希望高手介绍一下。谢谢!

  • 相关阅读:
    Qt计算器开发(三):执行效果及项目总结
    [HNOI2019]校园旅行
    How to fix nuget Unrecognized license type MIT when pack
    How to fix nuget Unrecognized license type MIT when pack
    git 通过 SublimeMerge 处理冲突
    git 通过 SublimeMerge 处理冲突
    git 上传当前分支
    git 上传当前分支
    gif 格式
    gif 格式
  • 原文地址:https://www.cnblogs.com/cy163/p/1708592.html
Copyright © 2011-2022 走看看