Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么Json测试程序没有';不行?_Java_Json_Glassfish - Fatal编程技术网

Java 为什么Json测试程序没有';不行?

Java 为什么Json测试程序没有';不行?,java,json,glassfish,Java,Json,Glassfish,当我用jdk 7运行Json测试程序时,它说: Exception in thread "main" javax.json.JsonException: Provider org.glassfish.json.JsonProviderImpl not found at javax.json.spi.JsonProvider.provider(JsonProvider.java:97) at javax.json.Json.createArrayBuilder(Json.java:

当我用jdk 7运行Json测试程序时,它说:

Exception in thread "main" javax.json.JsonException: Provider org.glassfish.json.JsonProviderImpl not found
    at javax.json.spi.JsonProvider.provider(JsonProvider.java:97)
    at javax.json.Json.createArrayBuilder(Json.java:257)"
我的项目中包含了“javax.json-api-1.0.jar”

import javax.json.Json;
import javax.json.JsonArray;
import javax.json.JsonArrayBuilder;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class JsonExample
{
  public static void main(String[] args)
  {
    List<User> users=getUsers();

    // build JSON
    JsonArrayBuilder jsonArrayBuilder=Json.createArrayBuilder();
    for (User user : users)
    {
      jsonArrayBuilder.add(
        Json.createObjectBuilder()
        .add("id",user.getId())
        .add("name",user.getName())
        .add("join",user.getJoin().getTime()));
    }

    JsonArray usersJson=jsonArrayBuilder.build();

    System.out.println(usersJson.toString());

  }

  // dummy users
  public static List<User> getUsers()
  {
    List<User> users=new ArrayList<User>(10);
    User user=new User();
    user.setId(1);
    user.setName("Hero");
    user.setJoin(new Date());
    users.add(user);

    user=new User();
    user.setId(2);
    user.setName("Citizen");
    user.setJoin(new Date());
    users.add(user);

    return users;
  }

  // POJO
  public static class User implements Serializable
  {
    private long id;
    private String name;
    private Date join;

    public long getId()
    {
      return id;
    }

    public void setId(long id)
    {
      this.id=id;
    }

    public String getName()
    {
      return name;
    }

    public void setName(String name)
    {
      this.name=name;
    }

    public Date getJoin()
    {
      return join;
    }

    public void setJoin(Date join)
    {
      this.join=join;
    }
  }
}
import javax.json.json;
导入javax.json.JsonArray;
导入javax.json.JsonArrayBuilder;
导入java.io.Serializable;
导入java.util.ArrayList;
导入java.util.Date;
导入java.util.List;
公共类JSONE示例
{
公共静态void main(字符串[]args)
{
List users=getUsers();
//构建JSON
JsonArrayBuilder JsonArrayBuilder=Json.createArrayBuilder();
for(用户:用户)
{
jsonArrayBuilder.add(
Json.createObjectBuilder()
.add(“id”,user.getId())
.add(“name”,user.getName())
.add(“join”,user.getJoin().getTime());
}
JsonArray usersJson=jsonArrayBuilder.build();
System.out.println(usersJson.toString());
}
//虚拟用户
公共静态列表getUsers()
{
列表用户=新的ArrayList(10);
用户=新用户();
user.setId(1);
user.setName(“Hero”);
user.setJoin(新日期());
用户。添加(用户);
user=新用户();
user.setId(2);
user.setName(“公民”);
user.setJoin(新日期());
用户。添加(用户);
返回用户;
}
//波乔
公共静态类用户实现可序列化
{
私人长id;
私有字符串名称;
私人约会加入;
公共长getId()
{
返回id;
}
公共无效集合id(长id)
{
这个.id=id;
}
公共字符串getName()
{
返回名称;
}
公共void集合名(字符串名)
{
this.name=name;
}
公共日期getJoin()
{
返回加入;
}
公共无效集合联接(日期联接)
{
this.join=join;
}
}
}

这是一个简单的程序,没有使用galssfish,为什么这里提到glassfish?

javax.json-api-1.0.jar
只包含用于编译时依赖性的api。但是如果你想运行你的应用程序,你需要一个
提供者/impl

<dependency>
    <groupId>org.glassfish</groupId>
    <artifactId>javax.json</artifactId>
    <version>1.0.4</version>
</dependency>
org.glassfish:javax.json
是您需要的包含
api
+
impl
类的jar

<dependency>
    <groupId>org.glassfish</groupId>
    <artifactId>javax.json</artifactId>
    <version>1.0.4</version>
</dependency>

玻璃鱼
.

直接链接到1.0.4