java - java.lang.ClassNotFoundException:org.eclipse.jetty.plus.jndi.Resource 在 docker 内运行 Solr 并修改 jetty.xml
问题描述
我正在使用以下 docker-compose.yml 在 docker 中运行 Solr。
version: "3"
services:
solr:
image: solr:8.0.0
ports:
- "8983:8983"
volumes:
- ./myData:/var/solr
- ./Config/jetty.xml:/opt/solr-8.0.0/server/etc/jetty.xml
command:
- solr-precreate
- gettingstarted
container_name: solr
我正在尝试为此处提到的所有内核提供通用 MySQL 配置。
这是我在 jetty.xml 中添加的配置
<New id="jdbc" class="org.eclipse.jetty.plus.jndi.Resource">
<Arg>jdbc/myconfig</Arg>
<Arg>
<New class="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource">
<Set name="Url">jdbc:mysql://ip:port/myDB</Set>
<Set name="User">user</Set>
<Set name="Password">password</Set>
</New>
</Arg>
</New>
但是,当我尝试使用它运行 Solr 时,我收到以下错误。
java.security.PrivilegedActionException: null
at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1511) [jetty-xml-9.4.14.v20181114.jar:9.4.14.v20181114]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:?]
at org.eclipse.jetty.start.Main.invokeMain(Main.java:220) [start.jar:9.4.14.v20181114]
at org.eclipse.jetty.start.Main.start(Main.java:490) [start.jar:9.4.14.v20181114]
at org.eclipse.jetty.start.Main.main(Main.java:77) [start.jar:9.4.14.v20181114]
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.plus.jndi.Resource
at java.net.URLClassLoader.findClass(Unknown Source) ~[?:?]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:?]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:?]
at org.eclipse.jetty.util.Loader.loadClass(Loader.java:65) ~[jetty-util-9.4.14.v20181114.jar:9.4.14.v20181114]
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.newObj(XmlConfiguration.java:834) ~[jetty-xml-9.4.14.v20181114.jar:9.4.14.v20181114]
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:478) ~[jetty-xml-9.4.14.v20181114.jar:9.4.14.v20181114]
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:413) ~[jetty-xml-9.4.14.v20181114.jar:9.4.14.v20181114]
at org.eclipse.jetty.xml.XmlConfiguration.configure(XmlConfiguration.java:311) ~[jetty-xml-9.4.14.v20181114.jar:9.4.14.v20181114]
at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1558) ~[jetty-xml-9.4.14.v20181114.jar:9.4.14.v20181114]
at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1512) ~[jetty-xml-9.4.14.v20181114.jar:9.4.14.v20181114]
... 9 more
有什么需要补充的吗?
解决方案
推荐阅读
- c - 使用 strcmp 时出现分段错误(核心转储)
- google-cloud-platform - Google Cloud Run 如何处理异步调用?
- python - 如何使用 Python 按列对不同的 csv 文件进行排序并将它们合并为一个?
- javascript - 在 2 个 div 的碰撞中,使用 Javascript 在其中一个中添加一个类
- r - R:将日期从每天转换为每周并绘制它们
- javascript - 如何在 Firebase 存储参考中使用变量
- c - 初始化一个包含 20 个元素的数组以稍后更新值,但数组的某些元素在 C 中以非零开头?这是为什么?
- python - 删除数据集中字符串的结尾(python)
- javascript - 如何挂载像 codepen 这样的 Vue 3 CLI 项目
- c# - 试图获得骰子卷的随机数