diff --git a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ArrayResource.java b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ArrayResource.java
index 0489730..8df6440 100644
--- a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ArrayResource.java
+++ b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ArrayResource.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2019 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2020 Oracle and/or its affiliates. All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Distribution License v. 1.0, which is available at
@@ -11,8 +11,8 @@
 package org.glassfish.jsondemos.jaxrs;
 
 import jakarta.json.*;
-import javax.ws.rs.*;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.*;
+import jakarta.ws.rs.core.MediaType;
 
 /**
  * JsonArray as parameter and return type for a Jakarta RESTful Web Services resource
diff --git a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/DemoApplication.java b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/DemoApplication.java
index 5f441c2..da8d87f 100644
--- a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/DemoApplication.java
+++ b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/DemoApplication.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2019 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2020 Oracle and/or its affiliates. All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Distribution License v. 1.0, which is available at
@@ -11,8 +11,8 @@
 package org.glassfish.jsondemos.jaxrs;
 
 import jakarta.json.stream.JsonGenerator;
-import javax.ws.rs.ApplicationPath;
-import javax.ws.rs.core.Application;
+import jakarta.ws.rs.ApplicationPath;
+import jakarta.ws.rs.core.Application;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
diff --git a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/GeneratorResource.java b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/GeneratorResource.java
index 126c93d..705a724 100644
--- a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/GeneratorResource.java
+++ b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/GeneratorResource.java
@@ -12,11 +12,11 @@
 
 import jakarta.json.Json;
 import jakarta.json.stream.JsonGenerator;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.StreamingOutput;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.StreamingOutput;
 import java.io.OutputStream;
 
 /**
diff --git a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ObjectResource.java b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ObjectResource.java
index 69f6f56..c12eb35 100644
--- a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ObjectResource.java
+++ b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ObjectResource.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2019 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2020 Oracle and/or its affiliates. All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Distribution License v. 1.0, which is available at
@@ -11,8 +11,8 @@
 package org.glassfish.jsondemos.jaxrs;
 
 import jakarta.json.*;
-import javax.ws.rs.*;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.*;
+import jakarta.ws.rs.core.MediaType;
 
 /**
  * JsonObject as parameter and return type for a
diff --git a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ParserResource.java b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ParserResource.java
index 726fbc3..6809a4d 100644
--- a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ParserResource.java
+++ b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/ParserResource.java
@@ -13,10 +13,10 @@
 import jakarta.json.Json;
 import jakarta.json.stream.JsonParser;
 import jakarta.json.stream.JsonParser.Event;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.StreamingOutput;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.StreamingOutput;
 import java.io.*;
 import java.net.URL;
 
diff --git a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/StructureResource.java b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/StructureResource.java
index 7415ebc..b1ce73c 100644
--- a/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/StructureResource.java
+++ b/demos/jaxrs/src/main/java/org/glassfish/jsondemos/jaxrs/StructureResource.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2019 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2020 Oracle and/or its affiliates. All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Distribution License v. 1.0, which is available at
@@ -11,8 +11,8 @@
 package org.glassfish.jsondemos.jaxrs;
 
 import jakarta.json.*;
-import javax.ws.rs.*;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.*;
+import jakarta.ws.rs.core.MediaType;
 
 /**
  * JsonStructure as parameter and return type for a
diff --git a/jaxrs/src/main/java/org/glassfish/json/jaxrs/JsonValueBodyReader.java b/jaxrs/src/main/java/org/glassfish/json/jaxrs/JsonValueBodyReader.java
index 1381ff6..939982d 100644
--- a/jaxrs/src/main/java/org/glassfish/json/jaxrs/JsonValueBodyReader.java
+++ b/jaxrs/src/main/java/org/glassfish/json/jaxrs/JsonValueBodyReader.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2019 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2020 Oracle and/or its affiliates. All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v. 2.0, which is available at
@@ -24,12 +24,12 @@
 import jakarta.json.JsonReader;
 import jakarta.json.JsonReaderFactory;
 import jakarta.json.JsonValue;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.ext.MessageBodyReader;
-import javax.ws.rs.ext.Provider;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.WebApplicationException;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.ext.MessageBodyReader;
+import jakarta.ws.rs.ext.Provider;
 
 /**
  * Jakarta RESTful Web Services MessageBodyReader for JsonValue.
diff --git a/jaxrs/src/main/java/org/glassfish/json/jaxrs/JsonValueBodyWriter.java b/jaxrs/src/main/java/org/glassfish/json/jaxrs/JsonValueBodyWriter.java
index 15be89b..cee4879 100644
--- a/jaxrs/src/main/java/org/glassfish/json/jaxrs/JsonValueBodyWriter.java
+++ b/jaxrs/src/main/java/org/glassfish/json/jaxrs/JsonValueBodyWriter.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2019 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2020 Oracle and/or its affiliates. All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v. 2.0, which is available at
@@ -28,14 +28,14 @@
 import jakarta.json.JsonWriter;
 import jakarta.json.JsonWriterFactory;
 import jakarta.json.stream.JsonGenerator;
-import javax.ws.rs.Produces;
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.core.Configuration;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.ext.MessageBodyWriter;
-import javax.ws.rs.ext.Provider;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.WebApplicationException;
+import jakarta.ws.rs.core.Configuration;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.ext.MessageBodyWriter;
+import jakarta.ws.rs.ext.Provider;
 
 /**
  * Jakarta RESTful Web Services MessageBodyWriter for JsonValue.
diff --git a/pom.xml b/pom.xml
index d11da17..fa2cc02 100644
--- a/pom.xml
+++ b/pom.xml
@@ -352,7 +352,7 @@
             <dependency>
                 <groupId>jakarta.ws.rs</groupId>
                 <artifactId>jakarta.ws.rs-api</artifactId>
-                <version>2.1.2</version>
+                <version>3.0.0-M1</version>
                 <scope>provided</scope>
             </dependency>
             <dependency>
