pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

    • <bdo id='4wDnn'></bdo><ul id='4wDnn'></ul>
  • <i id='4wDnn'><tr id='4wDnn'><dt id='4wDnn'><q id='4wDnn'><span id='4wDnn'><b id='4wDnn'><form id='4wDnn'><ins id='4wDnn'></ins><ul id='4wDnn'></ul><sub id='4wDnn'></sub></form><legend id='4wDnn'></legend><bdo id='4wDnn'><pre id='4wDnn'><center id='4wDnn'></center></pre></bdo></b><th id='4wDnn'></th></span></q></dt></tr></i><div class="bdhft55" id='4wDnn'><tfoot id='4wDnn'></tfoot><dl id='4wDnn'><fieldset id='4wDnn'></fieldset></dl></div>

        <small id='4wDnn'></small><noframes id='4wDnn'>

        <legend id='4wDnn'><style id='4wDnn'><dir id='4wDnn'><q id='4wDnn'></q></dir></style></legend>

      1. <tfoot id='4wDnn'></tfoot>

      2. Mockito、Java 9 和 java.lang.ClassNotFoundException:sun.ref

        Mockito, Java 9 and java.lang.ClassNotFoundException: sun.reflect.ReflectionFactory(Mockito、Java 9 和 java.lang.ClassNotFoundException:sun.reflect.ReflectionFactory)
          <tbody id='c1Oak'></tbody>
          • <small id='c1Oak'></small><noframes id='c1Oak'>

              <tfoot id='c1Oak'></tfoot>
              <i id='c1Oak'><tr id='c1Oak'><dt id='c1Oak'><q id='c1Oak'><span id='c1Oak'><b id='c1Oak'><form id='c1Oak'><ins id='c1Oak'></ins><ul id='c1Oak'></ul><sub id='c1Oak'></sub></form><legend id='c1Oak'></legend><bdo id='c1Oak'><pre id='c1Oak'><center id='c1Oak'></center></pre></bdo></b><th id='c1Oak'></th></span></q></dt></tr></i><div class="dvpfb77" id='c1Oak'><tfoot id='c1Oak'></tfoot><dl id='c1Oak'><fieldset id='c1Oak'></fieldset></dl></div>

                • <bdo id='c1Oak'></bdo><ul id='c1Oak'></ul>
                • <legend id='c1Oak'><style id='c1Oak'><dir id='c1Oak'><q id='c1Oak'></q></dir></style></legend>
                  本文介紹了Mockito、Java 9 和 java.lang.ClassNotFoundException:sun.reflect.ReflectionFactory的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  我的項目是一個使用 Mockito 測試庫的 Wildfly 13 應用程序.該應用程序未使用 Java 9 模塊結構.只要服務器在 Java 8 上運行,測試就可以正常工作,但是一旦我們升級到 Java 9,它們就會失敗,并出現以下異常:

                  My project is a Wildfly 13 application which uses Mockito testing library. The app is not using Java 9 module structure. As long as the server ran on Java 8 the tests worked fine, but once we upgraded to Java 9 they failed with the following exception:

                  org.objenesis.ObjenesisException: java.lang.ClassNotFoundException: sun.reflect.ReflectionFactory from [Module "test.war" from Service Module Loader]
                  at test.war//org.objenesis.instantiator.sun.SunReflectionFactoryHelper.getReflectionFactoryClass(SunReflectionFactoryHelper.java:63)
                  at test.war//org.objenesis.instantiator.sun.SunReflectionFactoryHelper.newConstructorForSerialization(SunReflectionFactoryHelper.java:37)
                  at test.war//org.objenesis.instantiator.sun.SunReflectionFactoryInstantiator.<init>(SunReflectionFactoryInstantiator.java:41)
                  at test.war//org.objenesis.strategy.StdInstantiatorStrategy.newInstantiatorOf(StdInstantiatorStrategy.java:68)
                  at test.war//org.objenesis.ObjenesisBase.getInstantiatorOf(ObjenesisBase.java:94)
                  at test.war//org.objenesis.ObjenesisBase.newInstance(ObjenesisBase.java:73)
                  at test.war//org.mockito.internal.creation.instance.ObjenesisInstantiator.newInstance(ObjenesisInstantiator.java:19)
                  at test.war//org.mockito.internal.creation.bytebuddy.SubclassByteBuddyMockMaker.createMock(SubclassByteBuddyMockMaker.java:47)
                  at test.war//org.mockito.internal.creation.bytebuddy.ByteBuddyMockMaker.createMock(ByteBuddyMockMaker.java:25)
                  at test.war//org.mockito.internal.util.MockUtil.createMock(MockUtil.java:35)
                  at test.war//org.mockito.internal.MockitoCore.mock(MockitoCore.java:68)
                  at test.war//org.mockito.Mockito.mock(Mockito.java:1895)
                  at test.war//org.mockito.Mockito.mock(Mockito.java:1804)
                  at test.war//application code...
                  

                  我嘗試了各種選項和組合:

                  I tried all kinds of options and combinations:

                  • 使用 Java 8、9、10 編譯
                  • 使用最新版本的 OpenJDK 9 和 10 運行
                  • 設置編譯器和虛擬機選項 --add-modules jdk.unsupported 和 --add-exports jdk.unsupported/sun.reflect=ALL-UNNAMED"

                  總是同樣的錯誤.我沒有想法.

                  Always the same error. I'm out of ideas.

                  --show-module-resolution的結果

                  root jdk.javadoc jrt:/jdk.javadoc
                  root jdk.jdi jrt:/jdk.jdi
                  root jdk.jshell jrt:/jdk.jshell
                  root jdk.sctp jrt:/jdk.sctp
                  root jdk.xml.dom jrt:/jdk.xml.dom
                  root jdk.jsobject jrt:/jdk.jsobject
                  root jdk.unsupported jrt:/jdk.unsupported
                  root jdk.scripting.nashorn jrt:/jdk.scripting.nashorn
                  root jdk.httpserver jrt:/jdk.httpserver
                  root jdk.management jrt:/jdk.management
                  root jdk.net jrt:/jdk.net
                  root jdk.security.auth jrt:/jdk.security.auth
                  root jdk.dynalink jrt:/jdk.dynalink
                  root java.se jrt:/java.se
                  root jdk.compiler jrt:/jdk.compiler
                  root jdk.accessibility jrt:/jdk.accessibility
                  root jdk.jartool jrt:/jdk.jartool
                  root jdk.jconsole jrt:/jdk.jconsole
                  root jdk.attach jrt:/jdk.attach
                  root jdk.security.jgss jrt:/jdk.security.jgss
                  jdk.security.jgss requires java.logging jrt:/java.logging
                  jdk.security.jgss requires java.security.sasl jrt:/java.security.sasl
                  jdk.security.jgss requires java.security.jgss jrt:/java.security.jgss
                  jdk.attach requires jdk.internal.jvmstat jrt:/jdk.internal.jvmstat
                  jdk.jconsole requires jdk.attach jrt:/jdk.attach
                  jdk.jconsole requires java.rmi jrt:/java.rmi
                  jdk.jconsole requires jdk.management jrt:/jdk.management
                  jdk.jconsole requires java.management jrt:/java.management
                  jdk.jconsole requires jdk.management.agent jrt:/jdk.management.agent
                  jdk.jconsole requires java.desktop jrt:/java.desktop
                  jdk.jconsole requires jdk.internal.jvmstat jrt:/jdk.internal.jvmstat
                  jdk.jconsole requires java.management.rmi jrt:/java.management.rmi
                  jdk.accessibility requires java.desktop jrt:/java.desktop
                  jdk.compiler requires java.compiler jrt:/java.compiler
                  java.se requires java.datatransfer jrt:/java.datatransfer
                  java.se requires java.compiler jrt:/java.compiler
                  java.se requires java.scripting jrt:/java.scripting
                  java.se requires java.desktop jrt:/java.desktop
                  java.se requires java.security.sasl jrt:/java.security.sasl
                  java.se requires java.naming jrt:/java.naming
                  java.se requires java.sql.rowset jrt:/java.sql.rowset
                  java.se requires java.security.jgss jrt:/java.security.jgss
                  java.se requires java.sql jrt:/java.sql
                  java.se requires java.management.rmi jrt:/java.management.rmi
                  java.se requires java.management jrt:/java.management
                  java.se requires java.xml.crypto jrt:/java.xml.crypto
                  java.se requires java.instrument jrt:/java.instrument
                  java.se requires java.rmi jrt:/java.rmi
                  java.se requires java.prefs jrt:/java.prefs
                  java.se requires java.logging jrt:/java.logging
                  java.se requires java.xml jrt:/java.xml
                  jdk.dynalink requires java.logging jrt:/java.logging
                  jdk.security.auth requires java.naming jrt:/java.naming
                  jdk.security.auth requires java.security.jgss jrt:/java.security.jgss
                  jdk.management requires java.management jrt:/java.management
                  jdk.scripting.nashorn requires java.logging jrt:/java.logging
                  jdk.scripting.nashorn requires java.scripting jrt:/java.scripting
                  jdk.scripting.nashorn requires jdk.dynalink jrt:/jdk.dynalink
                  jdk.jsobject requires java.desktop jrt:/java.desktop
                  jdk.xml.dom requires java.xml jrt:/java.xml
                  jdk.jshell requires java.compiler jrt:/java.compiler
                  jdk.jshell requires jdk.compiler jrt:/jdk.compiler
                  jdk.jshell requires java.logging jrt:/java.logging
                  jdk.jshell requires jdk.internal.opt jrt:/jdk.internal.opt
                  jdk.jshell requires jdk.internal.le jrt:/jdk.internal.le
                  jdk.jshell requires jdk.jdi jrt:/jdk.jdi
                  jdk.jshell requires java.prefs jrt:/java.prefs
                  jdk.jshell requires jdk.internal.ed jrt:/jdk.internal.ed
                  jdk.jdi requires jdk.attach jrt:/jdk.attach
                  jdk.jdi requires jdk.jdwp.agent jrt:/jdk.jdwp.agent
                  jdk.javadoc requires java.xml jrt:/java.xml
                  jdk.javadoc requires java.compiler jrt:/java.compiler
                  jdk.javadoc requires jdk.compiler jrt:/jdk.compiler
                  java.security.sasl requires java.logging jrt:/java.logging
                  java.security.jgss requires java.naming jrt:/java.naming
                  java.rmi requires java.logging jrt:/java.logging
                  jdk.management.agent requires java.management jrt:/java.management
                  jdk.management.agent requires java.management.rmi jrt:/java.management.rmi
                  java.desktop requires java.xml jrt:/java.xml
                  java.desktop requires java.prefs jrt:/java.prefs
                  java.desktop requires java.datatransfer jrt:/java.datatransfer
                  java.management.rmi requires java.naming jrt:/java.naming
                  java.management.rmi requires java.management jrt:/java.management
                  java.management.rmi requires java.rmi jrt:/java.rmi
                  java.naming requires java.security.sasl jrt:/java.security.sasl
                  java.sql.rowset requires java.logging jrt:/java.logging
                  java.sql.rowset requires java.naming jrt:/java.naming
                  java.sql.rowset requires java.sql jrt:/java.sql
                  java.sql requires java.logging jrt:/java.logging
                  java.sql requires java.xml jrt:/java.xml
                  java.xml.crypto requires java.logging jrt:/java.logging
                  java.xml.crypto requires java.xml jrt:/java.xml
                  java.prefs requires java.xml jrt:/java.xml
                  java.management binds java.management.rmi jrt:/java.management.rmi
                  java.management binds jdk.management jrt:/jdk.management
                  jdk.jshell binds jdk.editpad jrt:/jdk.editpad
                  java.naming binds jdk.naming.dns jrt:/jdk.naming.dns
                  java.naming binds jdk.naming.rmi jrt:/jdk.naming.rmi
                  java.datatransfer binds java.desktop jrt:/java.desktop
                  jdk.dynalink binds jdk.scripting.nashorn jrt:/jdk.scripting.nashorn
                  java.base binds jdk.charsets jrt:/jdk.charsets
                  java.base binds java.security.jgss jrt:/java.security.jgss
                  java.base binds java.security.sasl jrt:/java.security.sasl
                  java.base binds java.naming jrt:/java.naming
                  java.base binds jdk.security.jgss jrt:/jdk.security.jgss
                  java.base binds java.smartcardio jrt:/java.smartcardio
                  java.base binds jdk.crypto.ec jrt:/jdk.crypto.ec
                  java.base binds jdk.crypto.cryptoki jrt:/jdk.crypto.cryptoki
                  java.base binds java.xml.crypto jrt:/java.xml.crypto
                  java.base binds java.desktop jrt:/java.desktop
                  java.base binds jdk.localedata jrt:/jdk.localedata
                  java.base binds jdk.jlink jrt:/jdk.jlink
                  java.base binds jdk.jdeps jrt:/jdk.jdeps
                  java.base binds jdk.compiler jrt:/jdk.compiler
                  java.base binds jdk.jartool jrt:/jdk.jartool
                  java.base binds jdk.javadoc jrt:/jdk.javadoc
                  java.base binds jdk.zipfs jrt:/jdk.zipfs
                  java.base binds java.management jrt:/java.management
                  java.base binds jdk.security.auth jrt:/jdk.security.auth
                  java.base binds java.logging jrt:/java.logging
                  java.compiler binds jdk.compiler jrt:/jdk.compiler
                  java.compiler binds jdk.javadoc jrt:/jdk.javadoc
                  jdk.internal.jvmstat binds jdk.jstatd jrt:/jdk.jstatd
                  java.scripting binds jdk.scripting.nashorn jrt:/jdk.scripting.nashorn
                  jdk.jstatd requires java.rmi jrt:/java.rmi
                  jdk.jstatd requires jdk.internal.jvmstat jrt:/jdk.internal.jvmstat
                  jdk.jdeps requires java.compiler jrt:/java.compiler
                  jdk.jdeps requires jdk.compiler jrt:/jdk.compiler
                  jdk.jlink requires jdk.jdeps jrt:/jdk.jdeps
                  jdk.jlink requires jdk.internal.opt jrt:/jdk.internal.opt
                  jdk.crypto.cryptoki requires jdk.crypto.ec jrt:/jdk.crypto.ec
                  jdk.naming.rmi requires java.naming jrt:/java.naming
                  jdk.naming.rmi requires java.rmi jrt:/java.rmi
                  jdk.naming.dns requires java.naming jrt:/java.naming
                  jdk.editpad requires java.desktop jrt:/java.desktop
                  jdk.editpad requires jdk.internal.ed jrt:/jdk.internal.ed
                  

                  推薦答案

                  隨著更多的挖掘,我在 找到了解決方案https://developer.jboss.org/thread/278334 指向我 https://docs.jboss.org/author/display/WFLY10/Class+Loading+in+WildFly.文章有一個標題為訪問 JDK 類"的部分,其中指出并非所有類默認都可用于部署,您需要將它們添加到 jboss-deployment-structure.xml 以使它們可用.

                  With more digging I found the solution at https://developer.jboss.org/thread/278334 which pointed me to https://docs.jboss.org/author/display/WFLY10/Class+Loading+in+WildFly. The article has a section titled "Accessing JDK classes" which states that not all classes are available to deployment by default, and you need to add them to jboss-deployment-structure.xml to make them available.

                  就我而言:

                  <jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.1">
                      <deployment>
                          <dependencies>
                              <system export="true">
                                  <paths>
                                      <path name="sun/reflect"/>
                                  </paths>
                              </system>
                          </dependencies>
                      </deployment>
                  </jboss-deployment-structure>
                  

                  此解決方案適用于

                  • Wildfly 13,在 Java 10.0.2 上運行(9.0.4 也可以)
                  • 使用 Java 8 編譯的應用
                  • Mockito 1.10.19(我嘗試了 2.20.0 但出現了新錯誤)

                  這篇關于Mockito、Java 9 和 java.lang.ClassNotFoundException:sun.reflect.ReflectionFactory的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                  【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  How can I detect integer overflow on 32 bits int?(如何檢測 32 位 int 上的整數溢出?)
                  Local variables before return statements, does it matter?(return 語句之前的局部變量,這有關系嗎?)
                  How to convert Integer to int?(如何將整數轉換為整數?)
                  How do I create an int array with randomly shuffled numbers in a given range(如何在給定范圍內創建一個隨機打亂數字的 int 數組)
                  Inconsistent behavior on java#39;s ==(java的行為不一致==)
                  Why is Java able to store 0xff000000 as an int?(為什么 Java 能夠將 0xff000000 存儲為 int?)
                    <tfoot id='BSspG'></tfoot>

                    <small id='BSspG'></small><noframes id='BSspG'>

                  1. <i id='BSspG'><tr id='BSspG'><dt id='BSspG'><q id='BSspG'><span id='BSspG'><b id='BSspG'><form id='BSspG'><ins id='BSspG'></ins><ul id='BSspG'></ul><sub id='BSspG'></sub></form><legend id='BSspG'></legend><bdo id='BSspG'><pre id='BSspG'><center id='BSspG'></center></pre></bdo></b><th id='BSspG'></th></span></q></dt></tr></i><div class="dpj5llt" id='BSspG'><tfoot id='BSspG'></tfoot><dl id='BSspG'><fieldset id='BSspG'></fieldset></dl></div>
                        <tbody id='BSspG'></tbody>

                        <legend id='BSspG'><style id='BSspG'><dir id='BSspG'><q id='BSspG'></q></dir></style></legend>
                          <bdo id='BSspG'></bdo><ul id='BSspG'></ul>

                            主站蜘蛛池模板: 阿里巴巴诚信通温州、台州、宁波、嘉兴授权渠道商-浙江联欣科技提供阿里会员办理 | 柴油发电机组_柴油发电机_发电机组价格-江苏凯晨电力设备有限公司 | 铁艺,仿竹,竹节,护栏,围栏,篱笆,栅栏,栏杆,护栏网,网围栏,厂家 - 河北稳重金属丝网制品有限公司 山东太阳能路灯厂家-庭院灯生产厂家-济南晟启灯饰有限公司 | 【化妆品备案】进口化妆品备案流程-深圳美尚美化妆品有限公司 | 京港视通报道-质量走进大江南北-京港视通传媒[北京]有限公司 | 贝朗斯动力商城(BRCPOWER.COM) - 买叉车蓄电池上贝朗斯商城,价格更超值,品质有保障! | 超声波清洗机-超声波清洗设备定制生产厂家 - 深圳市冠博科技实业有限公司 | 河南正规膏药生产厂家-膏药贴牌-膏药代加工-修康药业集团官网 | 深圳成考网-深圳成人高考报名网 深圳工程师职称评定条件及流程_深圳职称评审_职称评审-职称网 | 示波器高压差分探头-国产电流探头厂家-南京桑润斯电子科技有限公司 | 活性氧化铝|无烟煤滤料|活性氧化铝厂家|锰砂滤料厂家-河南新泰净水材料有限公司 | 不锈钢钢格栅板_热浸锌钢格板_镀锌钢格栅板_钢格栅盖板-格美瑞 | 无锡市珂妮日用化妆品有限公司|珂妮日化官网|洗手液厂家 | 中药超微粉碎机(中药细胞级微粉碎)-百科 | 档案密集架,移动密集架,手摇式密集架,吉林档案密集架-厂家直销★价格公道★质量保证 | 回转炉,外热式回转窑,回转窑炉-淄博圣元窑炉工程有限公司 | 广州各区危化证办理_危险化学品经营许可证代办 | 食品级焦亚硫酸钠_工业级焦亚硫酸钠_焦亚硫酸钠-潍坊邦华化工有限公司 | 风化石头制砂机_方解石制砂机_瓷砖石子制砂机_华盛铭厂家 | 山东风淋室_201/304不锈钢风淋室净化设备厂家-盛之源风淋室厂家 翻斗式矿车|固定式矿车|曲轨侧卸式矿车|梭式矿车|矿车配件-山东卓力矿车生产厂家 | 防潮防水通风密闭门源头实力厂家 - 北京酷思帝克门窗 | bkzzy在职研究生网 - 在职研究生招生信息咨询平台 | 无硅导热垫片-碳纤维导热垫片-导热相变材料厂家-东莞市盛元新材料科技有限公司 | 祝融环境-地源热泵多恒系统高新技术企业,舒适生活环境缔造者! | 消泡剂_水处理消泡剂_切削液消泡剂_涂料消泡剂_有机硅消泡剂_广州中万新材料生产厂家 | PU树脂_水性聚氨酯树脂_聚氨酯固化剂_聚氨酯树脂厂家_宝景化工 | 托盘租赁_塑料托盘租赁_托盘出租_栈板出租_青岛托盘租赁-优胜必达 | 冻干机(冷冻干燥机)_小型|实验型|食品真空冷冻干燥机-松源 | 气象监测系统_气象传感器_微型气象仪_气象环境监测仪-山东风途物联网 | 泰国专线_泰国物流专线_广州到泰国物流公司-泰廊曼国际 | 啤酒设备-小型啤酒设备-啤酒厂设备-济南中酿机械设备有限公司 | 北京网站建设首页,做网站选【优站网】,专注北京网站建设,北京网站推广,天津网站建设,天津网站推广,小程序,手机APP的开发。 | 西安展台设计搭建_西安活动策划公司_西安会议会场布置_西安展厅设计西安旭阳展览展示 | 钢衬四氟管道_钢衬四氟直管_聚四氟乙烯衬里管件_聚四氟乙烯衬里管道-沧州汇霖管道科技有限公司 | 丽陂特官网_手机信号屏蔽器_Wifi信号干扰器厂家_学校考场工厂会议室屏蔽仪 | 危废处理系统,水泥厂DCS集散控制系统,石灰窑设备自动化控制系统-淄博正展工控设备 | 纯化水设备-EDI-制药-实验室-二级反渗透-高纯水|超纯水设备 | 注塑_注塑加工_注塑模具_塑胶模具_注塑加工厂家_深圳环科 | 农业仪器网 - 中国自动化农业仪器信息交流平台 | 宝宝药浴-产后药浴-药浴加盟-艾裕-专注母婴调养泡浴 | 国资灵活用工平台_全国灵活用工平台前十名-灵活用工结算小帮手 |