diff --git a/src/mobi/hsz/idea/gitignore/util/Utils.java b/src/mobi/hsz/idea/gitignore/util/Utils.java index 3ef425a2..8be7d256 100644 --- a/src/mobi/hsz/idea/gitignore/util/Utils.java +++ b/src/mobi/hsz/idea/gitignore/util/Utils.java @@ -502,4 +502,16 @@ public static List intersection(@NotNull Collection collecti public static List notNullize(@Nullable List list) { return list == null ? ContainerUtil.newArrayList() : list; } + + /** + * Method cloned from {@link ContainerUtil#getFirstItem(List)} because of NoSuchMethodError exception + * errors related to the some API changes. + * + * @param items method to check + * @param container type + * @return not null container + */ + public static T getFirstItem(@Nullable List items) { + return items == null || items.isEmpty() ? null : items.get(0); + } } diff --git a/src/mobi/hsz/idea/gitignore/util/exec/ExternalExec.java b/src/mobi/hsz/idea/gitignore/util/exec/ExternalExec.java index ec71204e..4249963f 100644 --- a/src/mobi/hsz/idea/gitignore/util/exec/ExternalExec.java +++ b/src/mobi/hsz/idea/gitignore/util/exec/ExternalExec.java @@ -127,7 +127,7 @@ private static String bin(@NotNull IgnoreLanguage language) { @Nullable private static T runForSingle(@NotNull IgnoreLanguage language, @NotNull String command, @Nullable VirtualFile directory, @NotNull final ExecutionOutputParser parser) { - return ContainerUtil.getFirstItem(run(language, command, directory, parser)); + return Utils.getFirstItem(run(language, command, directory, parser)); } /**