0 0

为什么jar没有生成directory entries,jar中的class就不能被Spring扫描到呢?5

内部机制是什么?求解
2013年8月15日 22:07

2个答案 按时间排序 按投票排序

0 0

采纳的答案

关于directory entries 的jar与不含directory entries 的区别及读取里面文件的方式:http://blog.csdn.net/wangpeng047/article/details/8202353
spring扫描bean的说明来自spring的reference文档,刚好开源中国上有一份:http://www.oschina.net/code/explore/spring-3.0.4/spring-framework-reference/src/beans-classpath-scanning.xml,里面明确说明:

<note>  

       <para>The scanning of classpath packages requires the presence of  

         corresponding directory entries in the classpath. When you build JARs  

         with Ant, make sure that you do <emphasis>not</emphasis> activate the  

         files-only switch of the JAR task.</para>  

     </note>  

2013年8月16日 10:47
0 0

举个例子
com.chuan.bing.jin.Test这个类
首先是类加载器把这个变为文件夹形式com/chuan/bing/jin,然后到这个文件夹里去加载Test.class
而你根本没有这个文件夹,那就报classNotFoundException

2013年8月16日 09:04

相关推荐

    Spring自动扫描无法扫描jar包中bean的解决方法

    不勾选"Add directory entries"时,jar包内部的类文件会按照扁平化的结构存储,这样Spring在扫描时无法定位到类的正确位置,因此无法加载Bean。而勾选这个选项后,jar包内的类文件会被组织成具有完整目录结构的形式...

    springboot动态加载jar包到容器中,并映射为接口

    ### Spring Boot 动态加载 Jar 包到容器中并映射为接口的技术解析 #### 一、背景介绍 在实际的开发过程中,我们经常会遇到这样的需求:系统需要根据不同的业务场景来动态地加载不同的功能模块或者组件。这些功能...

    MyEclipse中生成.jar文件的方法

    在MyEclipse这款强大的Java集成开发环境中,生成.jar文件是一项常用的任务,这通常涉及到将一个或多个类或者整个项目打包成可执行的Java应用程序或库。以下是在MyEclipse中生成.jar文件的详细步骤,以及一些相关的...

    Java的包扫描实现和Jar应用.docx

    在Spring框架中,这种机制被广泛用于自动装配和组件扫描,以便在启动时识别和初始化相关的bean。在自定义的项目中,我们也可以利用这个特性来动态发现和管理类,例如插件系统中的类加载。 在Java中,我们可以利用...

    删除jar包中的指定文件

    标题“删除jar包中的指定文件”涉及到的是Java开发中对已打包JAR文件进行操作的知识点。在Java中,JAR(Java Archive)文件是一种归档格式,用于将多个类文件和其他资源组合到一个单一的文件中,方便分发和执行。...

    如何打jar包,教你如何打jar包

    在Java开发中,将项目打包成JAR(Java Archive)文件是常见的操作,这有助于将所有类、资源和依赖集中到一个可执行的文件中,方便分发和运行。本教程将详细介绍如何手把手地创建一个JAR包。 首先,确保你已经安装了...

    bcprov-jdk15-135.jar和ojdbc6.jar

    标题中的"bcprov-jdk15-135.jar"和"ojdbc6.jar"是两个重要的Java库文件,它们在不同的领域中扮演着关键的角色。让我们深入了解一下这两个组件及其在IT行业中的应用。 首先,`bcprov-jdk15-135.jar`是Bouncy Castle...

    所有java的Jar包

    - **依赖管理**:在大型项目中,JAR文件常用于组织和管理第三方库,如Spring、Hibernate等。 - **Web应用**:在Servlet容器中,如Tomcat,WAR文件(Web应用的扩展形式,基于JAR)包含Web应用的所有资源。 - **分布式...

    从jar文档中读取文件

    基于 Java 技术的打包方案,Java 档案 (Java Archive, JAR) 文件允许开发人员把所有相关的内容 (.class、图片、声音和支持文件等) 打包到一个单一的文件中。JAR 文件格式支持压缩、身份验证和版本,以及许多其它特性...

    Eclipse 打jar包(fat jar)操作步骤(内含截图)

    首先,我们需要理解为什么需要fat jar。在Java项目中,通常会有很多第三方库作为依赖,这些库通常以JAR格式存在。如果直接打包项目为JAR,运行时需要将项目JAR和所有依赖JAR放置在同一目录下。而fat jar则将所有依赖...

    java 读取jar包文件

    如果你的文件是在运行时类路径中,你可以使用`ClassLoader`来获取输入流,这样就不需要直接处理`JarFile`了。例如: ```java InputStream in = getClass().getResourceAsStream("/path/to/target_file_name"); ...

    将myEclipse中的java项目发布成jar

    ### 如何将MyEclipse中的Java项目发布成可执行的JAR文件 在软件开发过程中,经常需要将Java项目打包成可执行的JAR文件,以便于部署和分发。本文将详细介绍如何在MyEclipse环境中完成这一过程,并提供相关的步骤和...

    win7 解决导出jar包提示 can not find the main class

    4. 在“JAR Export”向导中,勾选“Add manifest file to JAR”选项,并在下方的“Manifest entries”中输入主类名,例如: ``` Main-Class: com.example.MainClass ``` 5. 完成其他设置后,点击“Finish”完成...

    用反射解析jar文件并执行里面Java代码

    在Java编程语言中,反射(Reflection)是一种强大的工具,它允许程序在运行时检查和操作类、接口、字段以及方法等对象。通过反射,我们可以在不知道具体类名的情况下实例化对象,调用方法,访问和修改私有成员,以及...

    Java实现从jar包中读取指定文件的方法

    在Java编程中,有时我们需要从已经打包的JAR文件中读取特定的资源文件,例如配置文件、图片或库。本篇文章将详细讲解如何在Java中实现从JAR包中读取指定文件的方法。 首先,Java提供了`java.util.jar`包,其中包含...

    程序可能用到的Jar文件

    2. 主类:若JAR文件包含可执行的Java应用程序,清单文件需指定主类,这样通过`java -jar jarfile.jar`就能直接运行。 三、使用JAR文件 1. 运行:除了指定主类的JAR文件可以直接运行,还可以通过`java -cp jarfile....

    bcprov-jdk15on-1.52.jar、bcprov-ext-jdk15on-1.52.jar

    标题中的"bcprov-jdk15on-1.52.jar"和"bcprov-ext-jdk15on-1.52.jar"是两个Java Archive (JAR) 文件,它们属于Bouncy Castle加密库的不同版本。Bouncy Castle是一个广泛使用的开源Java安全套件,提供了大量的加密...

    bcprov-jdk16-1.46.jar

    这个版本号表示这是Bouncy Castle的某个历史版本,可能在某些特定环境中被需要,因为较旧的Java版本可能不支持更新的加密库。 标签"jar"表明这是一个Java Archive文件,它是Java平台的标准归档格式,用于封装多个类...

    bcprov-jdk16-143.jar和bcprov-jdk15-135.jar

    解决no such provider: BC 问题所需的JAR 在jdk中的jre\lib\security修改java.security文件, security.provider.6=com.sun.security.sasl.Provider 下面添加 security.provider.7=org.bouncycastle.jce.provider....

    java 导出 jar 文件 执行批处理

    Java平台上的程序通常被打包成JAR(Java Archive)文件,便于分发和执行。`jar`文件是一种归档格式,它将多个类文件、资源文件和其他相关文件组合在一起,以便于作为一个整体运行或部署。在Java开发中,导出JAR文件...

Global site tag (gtag.js) - Google Analytics