diff --git a/bom/pom.xml b/bom/pom.xml index 80c5fe3..ab13bf2 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -49,15 +49,11 @@ - - net.harawata - appdirs - 1.2.1 - com.google.zxing core 3.5.0 + true it.tdlight diff --git a/example/pom.xml b/example/pom.xml index d372e9b..f7a3047 100644 --- a/example/pom.xml +++ b/example/pom.xml @@ -26,7 +26,7 @@ it.tdlight tdlight-java-bom - 2.8.9.4 + 2.8.10.0 pom import diff --git a/src/main/java/it/tdlight/client/QrCodeTerminal.java b/src/main/java/it/tdlight/client/QrCodeTerminal.java index 9db2e4d..0b10cd5 100644 --- a/src/main/java/it/tdlight/client/QrCodeTerminal.java +++ b/src/main/java/it/tdlight/client/QrCodeTerminal.java @@ -8,7 +8,7 @@ import com.google.zxing.common.BitMatrix; import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; import java.util.Hashtable; -class QrCodeTerminal { +public class QrCodeTerminal { public static String getQr(String url) { int width = 40; @@ -24,7 +24,7 @@ class QrCodeTerminal { } } - public static String toAscii(BitMatrix bitMatrix) { + static String toAscii(BitMatrix bitMatrix) { StringBuilder sb = new StringBuilder(); for (int rows = 0; rows < bitMatrix.getHeight(); rows++) { for (int cols = 0; cols < bitMatrix.getWidth(); cols++) { diff --git a/src/main/java/it/tdlight/client/ScannerClientInteraction.java b/src/main/java/it/tdlight/client/ScannerClientInteraction.java index 58839e9..cbfdf97 100644 --- a/src/main/java/it/tdlight/client/ScannerClientInteraction.java +++ b/src/main/java/it/tdlight/client/ScannerClientInteraction.java @@ -4,9 +4,13 @@ import it.tdlight.common.utils.ScannerUtils; import it.tdlight.jni.TdApi.TermsOfService; import java.util.concurrent.ExecutorService; import java.util.function.Consumer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; final class ScannerClientInteraction implements ClientInteraction { + private static final Logger LOG = LoggerFactory.getLogger(ScannerClientInteraction.class); + private final ExecutorService blockingExecutor; private final Authenticable authenticable; @@ -83,8 +87,13 @@ final class ScannerClientInteraction implements ClientInteraction { String link = ((ParameterInfoNotifyLink) parameterInfo).getLink(); System.out.println("Please confirm this login link on another device: " + link); System.out.println(); - System.out.println(QrCodeTerminal.getQr(link)); - System.out.println(); + try { + System.out.println(QrCodeTerminal.getQr(link)); + System.out.println(); + } catch (NoClassDefFoundError ex) { + LOG.warn("QR code library is missing!" + + " Please add the following dependency to your project: com.google.zxing:core"); + } resultCons.accept(""); return; case TERMS_OF_SERVICE: diff --git a/src/main/java/module-info.java b/src/main/java/module-info.java index e3fddd2..7463340 100644 --- a/src/main/java/module-info.java +++ b/src/main/java/module-info.java @@ -2,7 +2,7 @@ module tdlight.java { requires tdlight.api; requires org.reactivestreams; requires org.slf4j; - requires com.google.zxing; + requires static com.google.zxing; exports it.tdlight.tdlight; exports it.tdlight.tdnative; exports it.tdlight.tdlib; diff --git a/tdlib/pom.xml b/tdlib/pom.xml index 72165a3..cacc1d3 100644 --- a/tdlib/pom.xml +++ b/tdlib/pom.xml @@ -60,13 +60,10 @@ reactive-streams 1.0.3 - - net.harawata - appdirs - com.google.zxing core + true org.junit.jupiter diff --git a/tdlight-java-8/pom.xml b/tdlight-java-8/pom.xml index f4ec6c3..629a274 100644 --- a/tdlight-java-8/pom.xml +++ b/tdlight-java-8/pom.xml @@ -58,13 +58,10 @@ reactive-streams 1.0.4 - - net.harawata - appdirs - com.google.zxing core + true org.junit.jupiter diff --git a/tdlight-java/pom.xml b/tdlight-java/pom.xml index bda9bc0..c0a100f 100644 --- a/tdlight-java/pom.xml +++ b/tdlight-java/pom.xml @@ -58,13 +58,10 @@ reactive-streams 1.0.4 - - net.harawata - appdirs - com.google.zxing core + true org.junit.jupiter