当前位置: 首页 > news >正文

spring如何从jar中读取applicationContext.xml配置文件?

给外国朋友:

spring how to find and read applicationContext.xml from jar file?

Is very easy! Put jar file to web-inf/lib directory.  Don't put it to web-inf/classes directory. When you make jar file, check eclipse's "Add directory entries" option.  Because of The classPath include [src(classes)] path,but not include jar file where in  [src(classes)] path. 

很多人喜欢把非jsp部分的纯java代码打包为jar使用,但是如果把applicationContext.xml放在src目录中一起打包的话,很多人表示网站就无法正常运行了。

很多人费劲心机研究如何修改web.xml文件来处理:

 <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:applicationContext.xml</param-value>
 </context-param>
 <listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </listener>

 

但是,其实这么写并没有什么问题。说起来解决这个问题很简单,你是不是把生成的jar文件放在web-inf/classes目录下了,兄弟,把它放在web-inf/lib目录下试试,是不是一切都好了?

要注意打包时选上“Add directory entries”

 

====================================================

扩展信息:

如果需要用到 .jar 文件中的类或者资源, 必须把 jar 文件的文件名放入类路径, 而不是其(jar)所在的目录。

Java EE规范(Servlet规范)中,web app的web-inf/lib目录下的所有jar文件会自动加入classpath。

jar文件放在web-inf/classes目录下时,并不算在classpath中,因此jar中的applicationContext.xml找不到。

转载于:https://www.cnblogs.com/calow/p/3613446.html

相关文章:

  • Spring Cloud Feign的两种使用姿势
  • Tornado实现多进程/多线程的HTTP服务
  • 数据库之左连接,右连接和内连接
  • C++ 引用
  • ES6 ...操作符
  • 2.Median of Two Sorted Arrays (两个排序数组的中位数)
  • 轻量级kotlin + Mvp + Rxjava + Retrofit框架
  • HDU 2722 Here We Go(relians) Again
  • yii2-queue一个好用的yii2队列操作扩展
  • ppwjs之bootstrap表格:响应式
  • [大牛翻译系列]Hadoop(22)附录D.2 复制连接框架
  • Java大小写转换
  • Transact-SQL语法速查手册
  • 开源地图数据可视化库——mapnik
  • IOS开发常用的linux命令
  • 分享的文章《人生如棋》
  • CSS盒模型深入
  • Django 博客开发教程 8 - 博客文章详情页
  • JavaScript标准库系列——Math对象和Date对象(二)
  • npx命令介绍
  • 从伪并行的 Python 多线程说起
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 腾讯优测优分享 | Android碎片化问题小结——关于闪光灯的那些事儿
  • 微信公众号开发小记——5.python微信红包
  • 想写好前端,先练好内功
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • FaaS 的简单实践
  • (Redis使用系列) Springboot 使用redis实现接口Api限流 十
  • (八)Flask之app.route装饰器函数的参数
  • (附源码)springboot家庭装修管理系统 毕业设计 613205
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (全注解开发)学习Spring-MVC的第三天
  • (十六)Flask之蓝图
  • (转)h264中avc和flv数据的解析
  • ****** 二 ******、软设笔记【数据结构】-KMP算法、树、二叉树
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .NET导入Excel数据
  • .NET设计模式(11):组合模式(Composite Pattern)
  • .Net中间语言BeforeFieldInit
  • .pyc文件是什么?
  • @column注解_MyBatis注解开发 -MyBatis(15)
  • @RestController注解的使用
  • @WebService和@WebMethod注解的用法
  • [Android Pro] android 混淆文件project.properties和proguard-project.txt
  • [BeginCTF]真龙之力
  • [C/C++] -- 二叉树
  • [C++]模板与STL简介
  • [Django 0-1] Core.Email 模块
  • [Electron] 将应用打包成供Ubuntu、Debian平台下安装的deb包
  • [GXYCTF2019]BabyUpload1 -- 题目分析与详解
  • [iHooya]2023年1月30日作业解析
  • [Intel Edison开发板] 05、Edison开发基于MRAA实现IO控制,特别是UART通信
  • [LeetCode]—Longest Palindromic Substring 最长回文子串
  • [MQ]常用的mq产品图形管理web界面或客户端
  • [one_demo_11]二分查找法