首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在ColdFusion WEB库中更改JAR文件

在ColdFusion WEB库中更改JAR文件
EN

Stack Overflow用户
提问于 2013-03-20 11:21:11
回答 1查看 1.1K关注 0票数 2

上下文

我正在做一个我们使用荣格图书馆的项目。我的自定义java代码和Jung库都放在www.root/WEB/lib下面。

注意,JUNG的某些类依赖于ApacheCommons-Collections.jar,它也存在于同一个文件夹中(默认情况下由CF提供)。

问题

我们计划从CF7迁移到CF10,因此,我正在对项目中的所有代码进行试点测试,发现某些代码(使用JUNG)失败了,出现了“类未找到”的异常。

在调试和检查collections 2.1.jar在CF 10中给出的方法时,我发现它与CF 7中的方法不同。如果我将JAR更新为最新的collections 3.2.1版本,代码就能正常工作,因为它找到了所有需要的类。

我可以修改我的代码库,以适应默认的collections 2.1.jar,但这将导致至少2-3个月的开发测试周期。我想把它当作最后的选择,如果可能的话最好避免它。

现在,我的问题是-

  1. 如果我用3.2.1修改(更新) 2.1,会有什么问题?
  2. 核心CF中使用这个罐子的部分可以是什么?
  3. 为什么CF使用这个过时的2.1 (我觉得如此) JAR版本?

家庭工作我做了

  • 测试:为了不影响其他应用程序,我创建了一个单独的实例,将JAR更改为最新的3.2.1,并在其上托管了我的应用程序并进行了一些测试。一切似乎都很好,因为我没有遇到任何问题。但是,我担心CF中可能有一些区域依赖于这个罐子,并且可能会破裂。
  • c聚变\ lib :我已经发现公用-集合-3.2.1已经存在于主lib(c聚变\lib)文件夹中。因此,更改WEB/lib中的JAR没有任何区别。
  • cfusion\wwwroot\WEB-INF\lib:我已经读到,放置在这个文件夹中的任何JAR文件都只用于应用程序,而不是CF本身。我可能错了,或者完全误解了意思。纠正我!

对这个问题的回答将有助于我更好地理解CF,也有助于解决问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-21 06:22:41

我想我找到了答案。

我误解了Adobe在创建CF10时更改了其WEB/lib中的commons-collections.jar。它没有,即使它做到了(假设),这与我的问题无关。

在阅读了来自@Miguel-F@Leigh的注释之后,我检查了前面的安装并比较了库的更改。在此期间,我发现前面的一个开发人员有意地将公共集合从CF提供的原始集合更改为带有JUNG works的定制集合。我从JAR编译签名中确认了这一点,并在其中添加了与更改相对应的小注释。

现在,我已经将相同的文件复制到新的CF 10中,并且我的报告运行良好。

带走

  1. 在/WEB/lib/中对JAR的更改并不影响CF的整体安装,只有在您处理自定义代码(重要的是,您知道自己在做什么)时才会影响CF的安装。
  2. 如果可能的话,请将这些更改记录为应用程序开发日志的一部分,以便当您离开这个位置时,下一个开发人员可以轻松地了解这些定制。
  3. 向社区谈论你的问题,在让他们理解问题的过程中,你可能会找到答案。:)

谢谢

我要感谢@Miguel-F@Brian对系统配置的输入。还有更多的感谢@Leigh他的不同如何?这让我重新思考并找到了答案。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15522101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档