Генератор Android-DTS: ошибка в Iterable и других универсальных и базовых классах - PullRequest
0 голосов
/ 19 октября 2018

Я пытаюсь написать плагин для PDFBox-Android и использую android-dts-generator из nativescript.Я запускаю инструмент со слегка измененным jar (потому что функции пространства имен недопустимы).

Когда я компилирую мои машинописные файлы, все в порядке.Но когда я запускаю плагин (с npm run demo.android ), я получаю следующие ошибки:

../src/platforms/android/typings/pdfbox-android.d.ts:1611:19 - error
TS2720: Class 'PairData0Format0' incorrectly implements class
'Comparator<Array<number>>'. Did you mean to extend
'Comparator<Array<number>>' and inherit its members as a subclass?  
Property 'equals' is missing in type 'PairData0Format0'.

1611                            export class PairData0Format0 extends
com.tom_roush.fontbox.ttf.KerningSubtable.PairData implements
java.util.Comparator<native.Array<number>>  {
                                             ~~~~~~~~~~~~~~~~


../src/platforms/android/typings/pdfbox-android.d.ts:4714:18 - error
TS2720: Class 'COSArray' incorrectly implements class
'Iterable<COSBase>'. Did you mean to extend 'Iterable<COSBase>' and
inherit its members as a subclass?   Property 'wait' is missing in
type 'COSArray'.

4714                    export class COSArray extends
com.tom_roush.pdfbox.cos.COSBase implements
java.lang.Iterable<com.tom_roush.pdfbox.cos.COSBase>  {
                                     ~~~~~~~~


../src/platforms/android/typings/pdfbox-android.d.ts:5034:18 - error
TS2720: Class 'COSName' incorrectly implements class
'Comparable<COSName>'. Did you mean to extend 'Comparable<COSName>'
and inherit its members as a subclass?   Property 'wait' is missing in
type 'COSName'.

5034                    export class COSName extends
com.tom_roush.pdfbox.cos.COSBase implements
java.lang.Comparable<com.tom_roush.pdfbox.cos.COSName>  {
                                     ~~~~~~~


../src/platforms/android/typings/pdfbox-android.d.ts:7309:33 - error
TS2314: Generic type 'List<E>' requires 1 type argument(s).

7309                            public writeTokens(param0:
java.util.List): void;
                                                           ~~~~~~~~~~~~~~


../src/platforms/android/typings/pdfbox-android.d.ts:7463:32 - error
TS2314: Generic type 'List<E>' requires 1 type argument(s).

7463                            public setThreads(param0:
java.util.List): void;
                                                          ~~~~~~~~~~~~~~


../src/platforms/android/typings/pdfbox-android.d.ts:11087:31 - error
TS2314: Generic type 'List<E>' requires 1 type argument(s).

11087                                   public setPages(param0:
java.util.List): void;
                                                                ~~~~~~~~~~~~~~


../src/platforms/android/typings/pdfbox-android.d.ts:11099:38 - error
TS2314: Generic type 'List<E>' requires 1 type argument(s).

11099                                   public setEmbeddedFDFs(param0:
java.util.List): void;
                                                                       ~~~~~~~~~~~~~~


../src/platforms/android/typings/pdfbox-android.d.ts:11192:33 - error
TS2314: Generic type 'List<E>' requires 1 type argument(s).

11192                                   public setOptions(param0:
java.util.List): void;
                                                                  ~~~~~~~~~~~~~~


../src/platforms/android/typings/pdfbox-android.d.ts:17568:33 - error
TS2314: Generic type 'List<E>' requires 1 type argument(s).

17568                           public static sort(param0:
java.util.List): void;
                                                           ~~~~~~~~~~~~~~


../src/platforms/android/typings/pdfbox-android.d.ts:17569:33 - error
TS2314: Generic type 'List<E>' requires 1 type argument(s).

17569                           public static sort(param0:
java.util.List, param1: java.util.Comparator): void;
                                                           ~~~~~~~~~~~~~~


../src/platforms/android/typings/pdfbox-android.d.ts:17569:57 - error
TS2314: Generic type 'Comparator<T>' requires 1 type argument(s).

17569                           public static sort(param0:
java.util.List, param1: java.util.Comparator): void;
                                                                                   ~~~~~~~~~~~~~~~~~~~~

Может кто-нибудь сказать мне, как их исправить?Мне действительно нужны печатные издания.

1 Ответ

0 голосов
/ 22 октября 2018

Решение заключается в использовании обобщенных параметров и суперпараметров для генерации набора текста.

Последняя команда выглядит следующим образом:

java -jar dts-generator/build/libs/dts-generator.jar -input dts-generator/jar-files/pdfbox-android.jar -input-generics libs/generics.txt -super ${ANDROID_HOME}/platforms/android-19/android.jar

Дополнительную информацию можно найти в моем сообщении о проблеме на github:https://github.com/NativeScript/android-dts-generator/issues/35#issuecomment-431419734

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...