JAR 文件中的 Youtube 数据 API 项目

Youtube Data API Project in a JAR File

我构建了一个基于 Youtube 数据 API 命令行示例的 java 程序。该程序运行良好,我现在尝试将 java class 转换为 JAR 文件,这样我就不必在每次使用该程序时都启动 eclipse。为了构建 jar 文件,我使用了 Eclipse 导出功能 "File->Export->Java->runnable JAR file"。 我还选择将所有必需的库提取到生成的 JAR 中。

在我执行程序之前,一切似乎都运行良好,甚至创建了我希望它创建的输出文件,但 JAR 文件似乎无法从 Youtube 数据中检索数据 API,表示创建的文件为空

有没有人可以帮助我或者至少遇到类似问题?

下面我附上了两个示例输出:

这是我在 eclipse 中执行代码时得到的结果,它给了我正确的答案

频道;订户数
频道名称; 12345

这是我在执行 JAR 文件时得到的结果

频道;订户数
频道名称;空

JAR 似乎无法连接到 API

这里我有一个控制台日志: None 这些错误发生在 eclipse

中执行时
java.lang.NullPointerException
        at java.io.Reader.<init>(Reader.java:78)
        at java.io.InputStreamReader.<init>(InputStreamReader.java:72)
        at com.google.api.services.samples.youtube.cmdline.Auth.authorize(Auth.java:51)
        at com.google.api.services.samples.youtube.cmdline.data.getChannelsVideos.retrieveChannelInfo(getChannelsVideos.java:220)
        at com.google.api.services.samples.youtube.cmdline.data.getChannelsVideos.main(getChannelsVideos.java:49)
java.lang.NullPointerException
        at java.io.Reader.<init>(Reader.java:78)
        at java.io.InputStreamReader.<init>(InputStreamReader.java:72)
        at com.google.api.services.samples.youtube.cmdline.Auth.authorize(Auth.java:51)
        at com.google.api.services.samples.youtube.cmdline.data.getChannelsVideos.getChannelsVideo(getChannelsVideos.java:92)
        at com.google.api.services.samples.youtube.cmdline.data.getChannelsVideos.main(getChannelsVideos.java:50)

已解决 it:I 复制了 client_secrets.json 和 youtube。 properties 放入与 JAR 相同的文件夹中。显然不可能从 JAR 结构中导入这些文件