首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Parse4j错误JAVA Eclipse

Parse4j错误JAVA Eclipse
EN

Stack Overflow用户
提问于 2015-11-02 23:56:24
回答 2查看 176关注 0票数 2

我使用parse4j让用户注册帐户和登录,这样用户就可以在线查看他们的分数,问题是我无法运行我的应用程序,它显示很多错误

我将parse4j-1.0.jar文件导入到我的eclipse项目中,并按照说明编写

这是我的代码

代码语言:javascript
复制
    package com.card.lab;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import org.parse4j.ParseException;
import org.parse4j.ParseUser;
import org.parse4j.callback.LoginCallback;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import org.parse4j.callback.*;
import org.parse4j.*;

public class SignIN extends JFrame{
    JTextField user = new JTextField();
    JTextField pass = new JTextField();
    JButton signIn = new JButton();
    JButton signUp = new JButton();
      ParseUser userr = new ParseUser();
      ParseUser sign = new ParseUser();

      LoginCallback back;
    SignIN(){
        Parse.initialize("jNKMBNdtX5Vq9tS6jVsNLEO89fvZQ1el2D3xnTeP","ZnhzdUVXXaiDGQRfn1lOXifclxSFQDW18Y7gbQBb");
        this.setLayout(new GridLayout(4,1));
        this.setBackground(new Color(222,252,226));
      this.setSize(400,400);
      signIn.setText("SIGN IN");
      signUp.setText("SIGN UP");
      this.add(user);
      this.add(pass);
      this.add(signIn);
      this.add(signUp);
      this.setVisible(true);
      signUp.addActionListener(new ActionListener(){

        @Override
        public void actionPerformed(ActionEvent e) {
            // TODO Auto-generated method stub

            userr.setUsername(user.getText());
            userr.setPassword(pass.getText());
            try {
                userr.signUp();
                userr.loginInBackground(user.getText(), pass.getText(),back);
                if(sign!=null){
                    System.out.println("LOG IN");
                }
                else{
                    System.out.println("ERROR SIGN IN");
                }
                dispatch();
            } catch (ParseException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
        }

      });
      signIn.addActionListener(new ActionListener(){

        @Override
        public void actionPerformed(ActionEvent e) {
            // TODO Auto-generated method stub
            sign.loginInBackground(user.getText(), pass.getText(),back);
            if(sign!=null){
                System.out.println("LOG IN");
            }
            else{
                System.out.println("ERROR SIGN IN");
            }
        }

      });
    }
    public void dispatch(){
        this.setVisible(false);
        this.dispose();
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
          new SignIN();
    }

}

错误是

代码语言:javascript
复制
    Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONException
    at com.card.lab.SignIN.<init>(SignIN.java:24)
    at com.card.lab.SignIN.main(SignIN.java:87)
Caused by: java.lang.ClassNotFoundException: org.json.JSONException
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 2 more

我不明白为什么会这样

感谢任何帮助,让我知道如果你需要任何额外的信息!

谢谢

更新

我导入了parse4j-1.0.jar和json-20150729.jar,错误已更改为

代码语言:javascript
复制
 Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
    at org.parse4j.ParseObject.<clinit>(ParseObject.java:42)
    at com.card.lab.SignIN.<init>(SignIN.java:25)
    at com.card.lab.SignIN.main(SignIN.java:88)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 3 more
EN

回答 2

Stack Overflow用户

发布于 2015-11-02 23:59:28

parse4j有一个JSON依赖项,当运行应用程序时,它的jar file需要在类路径上。如果您使用的是Maven,则可以简单地使用依赖项

代码语言:javascript
复制
<dependency>
    <groupId>com.github.thiagolocatelli</groupId>
    <artifactId>parse4j</artifactId>
    <version>1.0</version>
</dependency>
票数 1
EN

Stack Overflow用户

发布于 2015-11-02 23:59:05

来自Documentation

如果Java Virtual Machine或ClassLoader实例试图加载类的定义(作为常规方法调用的一部分,或者作为使用new表达式创建新实例的一部分),但找不到类的定义,则会抛出

NoClassDefFoundError。编译当前执行的类时,搜索的类定义已经存在,但再也找不到该定义。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33481687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档