当前位置: 首页 > 面试题库 >

Java忽略类路径

轩辕煌
2023-03-14
问题内容

我正在编写一个使用Oracle
JDBC驱动程序的Java程序。我已经在我的类路径中设置了它。当我在IDE中运行程序(作为jdbc作为库添加)时,程序运行正常。当我尝试部署它时,它完全忽略了classpath中的清单,并给了我一个NoClassDefFoundError。

我想使用客户端的JDBC驱动程序(已安装的JDBC驱动程序),并且不提供自己的驱动程序。我打包了来自JDeveloper的程序,并将其部署为JAR文件。

运行:java -jar test.jar

当我将库放在%JAVA_HOME%/ lib / ext中时,它可以正常工作。

有人知道如何解决此问题吗?


问题答案:

使用时java -jar,将忽略类路径。

您需要使用Class-Path清单属性。

从http://download.oracle.com/javase/tutorial/deployment/jar/downman.html

您可以指定要包含在小程序或应用程序清单文件中“类路径”头字段中的类。Class-Path标头采用以下形式:

Class-Path: jar1-name jar2-name directory-name/jar3-name

从http://download.oracle.com/javase/1.4.2/docs/tooldocs/linux/java.html

-罐

使用此选项时,JAR文件是所有用户类的源,而其他用户类路径设置将被忽略。



 类似资料:
  • 我有一个实体: 存储库: 应引发异常的测试: 然而,测试失败。实体不会引发所需的异常。注释适用于字符串,但不适用于整数。 MyEntity的自动生成表: 更新 当我将 指定到 字段时,一切正常。但是,我希望能够将自己的值分配给主键字段。 更新2 更新的实体(存储库也已更新以反映更改): MyEntity的自动生成表:

  • JNA还加载正确的库。 这里有人知道为什么不起作用吗?是因为我使用的是带有清单的jar应用程序文件吗? 有人有类似的问题吗?

  • 问题内容: 我正在开发一个使用Spring-boot,关系数据库和Elasticsearch的应用程序。 我在代码的2个不同位置使用JSON序列化: 在REST API的响应中。 当代码与Elasticsearch交互时。 我在Elasticsearch中需要一些属性,但我想向应用程序用户隐藏(例如,来自关系数据库的内部ID)。 这是一个实体的例子: 问题 :当对象持久化在Elasticsearc

  • 问题内容: 我正在尝试为api 编写Web服务。因此,我编写了一个MyLogRecord类,该类继承自LogRecord。我用JAX- B注释对此类进行了注释,包括,因此它将忽略未注释的字段和属性。当我启动tomcat时,出现错误,并且其他类没有默认的构造函数,但是没有带注释的方法对Level类或任何其他类进行任何引用。这些由父类引用。 我的子类具有需要定义的所有内容。如何使JAX-B完全忽略父类

  • 我正在开发一个REST API,使用Spring Boot启动数据Rest。我想与JPA同步的一个类是User类,其中包含有关用户的信息,包括谁被允许访问API。 不幸的是,拥有用户和UserRepository意味着我的用户类在API中公开。我能够删除Id(在configureRepositoryRestConfiguration函数中)、用户名和密码(通过向我的用户类的每个变量添加@JsonI

  • 应用程序模块: app-routing.module.ts: 实体/实体-routing.module.ts: 实体/实体.组件. ts: 我还尝试使用以下方法在实体模块中定义路由,但组件仍会显示为导航到 /list,而不是 /entities/list。 我做错了什么?任何帮助是值得赞赏的!