相关疑难解决方法(0)

Java - class.getResource返回null

我使用以下内容来获取此特定文件的URL,但它返回null.有没有人对问题或其他方法有任何建议吗?

URL url = ExchangeInterceptor.class.getResource("GeoIP.dat");
Run Code Online (Sandbox Code Playgroud)

java url

50
推荐指数
9
解决办法
7万
查看次数

调用context.getResources()返回null

所以我想在我的项目中获得一个字符串资源但是当我打电话时context.getResources().getString(...),我得到一个NullPointerException.在调试模式下,我发现上下文不是null但是看着它的成员,我发现它mResources是null.为什么没有为活动上下文加载资源?

编辑

显然,这是触发异常的原因

public class MyActivity extends Activity {

    SomeClass someClass = new SomeClass(this);

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }
}


public class SomeClass {

    private final Context mContext;

    public SomeClass(Context context) {
        mContext = context;
        mContext.getResources().getString(R.string.app_name);
    }
}
Run Code Online (Sandbox Code Playgroud)

我不得不按照CommonsWare的建议将初始化someClass移到后面.谢谢.super.onCreate()

android nullpointerexception android-context

11
推荐指数
1
解决办法
7090
查看次数

Class.getResource()返回null

我试图在JPanel上显示图片,但我一直收到错误:

java.lang.IllegalArgumentException:input == null!

我不明白发生了什么.

这是我正在使用的代码:

public void actionPerformed(ActionEvent e) {
    try {
        Image image=ImageIO.read(getClass().getResource("img/" +num.getText()+".jpg"));

        Image resized = image.getScaledInstance(200, 200, 100);
        pictureFrame.setIcon(new ImageIcon(resized));
    } catch (Exception ex){
        ex.printStackTrace();
    }
}
Run Code Online (Sandbox Code Playgroud)

这只会导致我收到错误!

堆栈跟踪产生以下结果:

Java.lang.IllegalArgumentException: input == null!
    at javax.imageio.ImageIO.read(ImageIO.java:1362)
    at work.Item.actionPerformed(Item.java:96)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
    at java.awt.Component.processMouseEvent(Component.java:6297)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3275)
    at java.awt.Component.processEvent(Component.java:6062)
    at java.awt.Container.processEvent(Container.java:2039)
    at java.awt.Component.dispatchEventImpl(Component.java:4660)
    at java.awt.Container.dispatchEventImpl(Container.java:2097)
    at java.awt.Component.dispatchEvent(Component.java:4488)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4575)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4236)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4166)
    at java.awt.Container.dispatchEventImpl(Container.java:2083)
    at java.awt.Window.dispatchEventImpl(Window.java:2489)
    at java.awt.Component.dispatchEvent(Component.java:4488)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:668)
    at …
Run Code Online (Sandbox Code Playgroud)

java getresource

10
推荐指数
1
解决办法
3万
查看次数