有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

selenium导出的可运行jar无法工作,因为java。网网址。toString()是否为空?

我一直在编写一个程序,最后决定尝试导出并运行它,所以我开始使用Launch4j创建一个jar包装器。每当我尝试运行它时,通过Launch4j或使用。bat文件,它不会启动

在Eclipse中,程序运行完全正常。当我在Launch4j中单击testwrapper(使用jdk-15.0.1作为jre)时,我在日志中看到由于java.net.URL.toString()而出现了NullPointerException

我的程序依赖于Spotify API,其中还包含一些Selenium代码。我不太确定是什么导致了这个问题,因为所有的代码在Eclipse中都能完美地工作,而且我的代码中没有任何地方试图获取空URL的字符串

以下是我在日志中看到的错误:

java.lang.NullPointerException: Cannot invoke "java.net.URL.toString()" because "url" is null
    at java.desktop/sun.awt.SunToolkit.getImageFromHash(SunToolkit.java:653)
    at java.desktop/sun.awt.SunToolkit.getImage(SunToolkit.java:689)
    at views.view.initComponents(view.java:419)
    at views.view.<init>(view.java:123)
    at views.view$1.run(view.java:95)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:316)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

共 (1) 个答案

  1. # 1 楼答案

    今天同样的事情发生在我身上,我的问题是目录的第一个字母是大写的,而在Java中,我把它放在了小写的

    正确重命名目录后,我再次导出它,不再收到错误