0

我已经使用 maven 构建了 okta-sdk-0.0.4-SNAPSHOT.jar,并且能够毫无问题地编译我的测试 api 代码。 https://github.com/okta/oktasdk-java

但是,在运行时,API 调用需要更多的 jar 文件,例如包含以下包的 jar 文件:org.apache.http.Header 等。

当然,我可以通过查看运行时错误继续猜测我的类路径中缺少哪些依赖 JAR 文件,但我正在寻找任何已知的运行时依赖项列表。

谢谢,

贾廷

4

3 回答 3

1

我建议将maven shade 插件添加到您的构建中以创建一个 uber jar。那是一个包含所有必需依赖项的 jar。

于 2017-01-18T22:27:25.593 回答
1

您可以使用最终 jar 中的所有依赖项创建 uber jar,如下所示。

     <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-shade-plugin</artifactId>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>shade</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <finalName>uber-${artifactId}-${version}</finalName>
            </configuration>
        </plugin> 

或者您可以将所有依赖项复制到 lib 文件夹以在启动服务器时使用。

<build> 
  <plugins> 
    <plugin> 
    <artifactId>maven-dependency-plugin</artifactId> 
    <executions> 
      <execution> 
        <phase>install</phase> 
          <goals> 
            <goal>copy-dependencies</goal> 
          </goals> 
          <configuration> 
             <outputDirectory>${project.build.directory}/lib</outputDirectory> 
          </configuration> 
        </execution> 
      </executions> 
    </plugin> 
  </plugins> 
</build> 
于 2017-01-18T23:55:11.910 回答
0

以下是必需的依赖项。其中一两个可能是额外的,但显示的列表涵盖了所有必需的。

在此处输入图像描述

于 2017-01-19T00:42:54.930 回答