I'm trying to follow Stripe example here: https://stripe.com/docs/development
The code from the example:
import com.stripe.Stripe.*;
//... other import ...
public class TestStripe
{
public static void main(String[] args)
{
Stripe.apiKey = "sk_test_xxxxxxx";
Map<String, Object> params = new HashMap<String, Object>();
params.put("amount", 1000);
params.put("currency", "usd");
ArrayList paymentMethodTypes = new ArrayList();
paymentMethodTypes.add("card");
params.put("payment_method_types", paymentMethodTypes);
params.put("receipt_email", "jenny.rosen@example.com");
try
{
PaymentIntent.create(params);
}
catch (Throwable t){
t.printStackTrace();
}
}
}
I can compile and package in Maven
just fine. But when I run it, I got error as below. It stopped at the line with "Stripe.apiKey=...
" above.
Exception in thread "main" java.lang.NoClassDefFoundError: com/stripe/Stripe
at com.mycompany.app.TestAPI.main(TestStripe.java:XX)
Caused by: java.lang.ClassNotFoundException: com.stripe.Stripe
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
... 1 more
Here is my POM dependency:
<dependency>
<groupId>com.stripe</groupId>
<artifactId>stripe-java</artifactId>
<version>19.1.0</version>
</dependency>
How do I resove this?