gson | Java serialization/deserialization library | JSON Processing library

 by   google Java Version: 2.10 License: Apache-2.0

kandi X-RAY | gson Summary

kandi X-RAY | gson Summary

gson is a Java library typically used in Utilities, JSON Processing applications. gson has no bugs, it has no vulnerabilities, it has build file available, it has a Permissive License and it has high support. You can download it from GitHub, Maven.

Gson is a Java library that can be used to convert Java Objects into their JSON representation. It can also be used to convert a JSON string to an equivalent Java object. Gson can work with arbitrary Java objects including pre-existing objects that you do not have source-code of. There are a few open-source projects that can convert Java objects to JSON. However, most of them require that you place Java annotations in your classes; something that you can not do if you do not have access to the source-code. Most also do not fully support the use of Java Generics. Gson considers both of these as very important design goals.

            kandi-support Support

              gson has a highly active ecosystem.
              It has 22169 star(s) with 4238 fork(s). There are 748 watchers for this library.
              It had no major release in the last 12 months.
              There are 293 open issues and 1243 have been closed. On average issues are closed in 828 days. There are 101 open pull requests and 0 closed requests.
              It has a positive sentiment in the developer community.
              The latest version of gson is 2.10

            kandi-Quality Quality

              gson has 0 bugs and 0 code smells.

            kandi-Security Security

              gson has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              gson code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              gson is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              gson releases are available to install and integrate.
              Deployable package is available in Maven.
              Build file is available. You can build the component from source.
              Installation instructions, examples and code snippets are available.
              gson saves you 13213 person hours of effort in developing the same functionality from scratch.
              It has 26955 lines of code, 2345 functions and 229 files.
              It has medium code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed gson and discovered the below as its top functions. This is intended to give you an instant insight into gson implemented functionality, and help decide if they suit your requirements.
            • Parse a date from a string .
            • Moves to the next token .
            • Deserialize a message .
            • Returns the node for the specified key .
            • Creates a new object constructor .
            • Excludes the given field .
            • Formats a date into a string .
            • Time objects reflection .
            • Converts a string to a string literal .
            • Writes a string .
            Get all kandi verified functions for this library.

            gson Key Features

            No Key Features are available at this moment for gson.

            gson Examples and Code Snippets

            No Code Snippets are available at this moment for gson.

            Community Discussions


            Retrofit OkHttp - "unexpected end of stream"
            Asked 2022-Mar-27 at 18:38

            I am getting "Unexpected end of stream" while using Retrofit (2.9.0) with OkHttp3 (4.9.1)

            Retrofit configuration:



            Answered 2022-Mar-27 at 18:38

            OK, It took some time, but I've found what was going wrong and how to workaround that.

            When Android Studio's emulators running in Windows series OS (checked for 7 & 10) receive json-typed reply from server with retrofit it can with various probability loose 1 or 2 last symbols of the body when it is decoded to string, this symbols contain closing curly brackets and so such body could not be parsed to object by gson converter which results in throwing exception.

            The idea of workaround I found is to add an interceptor to retrofit which would check the decoded to string body if its last symbols match those of valid json response and add them if they are missed.



            A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$KaptExecutionWorkAction?java.lang.reflect.Invocation?
            Asked 2022-Mar-06 at 10:01

            when I run android application in real device I am getting following gradle errors



            Answered 2021-Aug-21 at 12:15

            I fixed it my problem by updating current kotlin version to latest version and moshi version to 1.12.0



            OkHttpClient sometimes getting incomplete json response
            Asked 2022-Mar-03 at 12:02

            I have been facing this incomplete json error and unable to find the issue. The API response work fine in POSTMAN. But this issue happened in my android emulator and it only happened randomly. This project is build with kotlin dagger-hilt retrofit2 okhttp3 gson.

            Success Response



            Answered 2022-Mar-03 at 12:02

            I suspect the Android emulator might be interfering with you here. I’ve seen issues with it misbehaving, particularly on Windows.


            If you'd like to workaround, consider changing your server to use something other than Connection: close to terminate your response body. Perhaps chunked encoding or a content-length header.



            Caused by java.lang.RuntimeException: Missing type parameter
            Asked 2022-Mar-02 at 16:52

            I'm retrieving a json and when I convert it to List using gson, the app crashes. The proguard is on and the problem is there.



            Answered 2022-Feb-03 at 11:12

            Well, after changing my TypeToken code, seems it's working.

            Non working code:



            android:exported needs to be explicitly specified for . Apps targeting Android 12 and higher are required to specify
            Asked 2022-Feb-23 at 14:13

            After upgrading to android 12, the application is not compiling. It shows

            "Manifest merger failed with multiple errors, see logs"

            Error showing in Merged manifest:

            Merging Errors: Error: android:exported needs to be explicitly specified for . Apps targeting Android 12 and higher are required to specify an explicit value for android:exported when the corresponding component has an intent filter defined. See for details. main manifest (this file)

            I have set all the activity with android:exported="false". But it is still showing this issue.

            My manifest file:



            Answered 2021-Aug-04 at 09:18

            I'm not sure what you're using to code, but in order to set it in Android Studio, open the manifest of your project and under the "activity" section, put android:exported="true"(or false if that is what you prefer). I have attached an example.



            Android Build Error: "lStar not found..."
            Asked 2022-Feb-18 at 06:59

            I have error like this after trying to build my apps in Emulator

            /Users/joel/.gradle/caches/transforms-3/06231cc1265260b25a06bafce7a4176f/transformed/core-1.7.0-alpha02/res/values/values.xml:105:5-114:25: AAPT: error: resource android:attr/lStar not found.

            I don't know what causes this error. After digging some answer which has similarly error (but in flutter) Problem. But still not solved my issue.

            I have this dependency in my project



            Answered 2021-Sep-28 at 17:18

            I managed to fix this by upgrading compileSdk to 31 and kotlin gradle plugin to 1.5.10



            Could not resolve - Gradle project sync failed. Basic functionality will not work properly - in kotlin project
            Asked 2022-Feb-14 at 19:47

            It was a project that used to work well in the past, but after updating, the following errors appear.



            Answered 2021-Sep-17 at 11:03

            Add mavenCentral() in Build Script



            Retrofit2, how I can convert response with diferent object names but same data types
            Asked 2022-Jan-25 at 18:43

            I have one call that return different objects name, in this case, each name is the hash of your wallet address, but I would like to treat them indifferently because all that matters is the data that is inside them, using a standard converter like Gson I am not able to do this, is there any way to do it manually?



            Answered 2022-Jan-25 at 12:34

            As I understand your question, this is less to do with retrofit and more with JSON parsing. Because the payload structure is a bit awkward I suggest you consume it in two steps:

            • step 1. Consume the content success, cache_last_updated and total
            • step 2. Add the id



            using webclient to call the grapql mutation API in spring boot
            Asked 2022-Jan-24 at 12:18

            I am stuck while calling the graphQL mutation API in spring boot. Let me explain my scenario, I have two microservice one is the AuditConsumeService which consume the message from the activeMQ, and the other is GraphQL layer which simply takes the data from the consume service and put it inside the database. Everything well when i try to push data using graphql playground or postman. How do I push data from AuditConsumeService. In the AuditConsumeService I am trying to send mutation API as a string. the method which is responsible to send that to graphQL layer is



            Answered 2022-Jan-23 at 21:40

            You have to send the query and body as variables in post request like shown here



            Android API 31 FLAG_IMMUTABLE Error using Firebase Auth UI
            Asked 2022-Jan-20 at 05:58

            I'm receving the below error in API 31 devices during Firebase Auth UI library(Only Phone number credential),



            Answered 2022-Jan-20 at 05:58

            In my case, firebase UI (com.firebaseui:firebase-ui-auth:8.0.0) was using which I found with the command './gradlew -q app:dependencyInsight --dependency play-services-auth --configuration debugCompileClasspath'

            This version of the play services auth was causing the issue for me.

            I added a separate

            implementation ''

            to my gradle and this issue disappeared.


            Community Discussions, Code Snippets contain sources that include Stack Exchange Network


            No vulnerabilities reported

            Install gson

            Gson jar downloads are available from Maven Central.


            Please use the 'gson' tag on StackOverflow or the google-gson Google group to discuss Gson or to post questions.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
          • HTTPS


          • CLI

            gh repo clone google/gson

          • sshUrl


          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular JSON Processing Libraries


            by nlohmann


            by alibaba


            by stedolan


            by google


            by paularmstrong

            Try Top Libraries by google


            by googleJava


            by googleJavaScript


            by googleHTML


            by googleC++