6

我正在尝试调试充气城堡 1.47 的问题。我可以找到“bcprov”的调试 jar,但找不到 {org.bouncycastle:bcpkix-jdk15on:1.47:jar}。

还有其他地方可以下载带有调试信息的 bcpkix-jdk15on-1.47.jar 吗?

或者

是否有一种工具可以从没有行号的 jar(包含 .class 文件)生成行号,并且还为同一个生成的 jar 生成源?

或者

我一直在尝试从源代码1构建 jar,但构建无法从错误中找到我认为的测试 jar。

  [javadoc] /tickets/bouncycastle/src-cvs/java/crypto/build/artifacts/jdk1.5/bcprov-jdk15on-147/src/org/bouncycastle/jce/provider/test/AllTests.java:5: package junit.framework does not exist
  [javadoc] import junit.framework.Test;
  [javadoc]                       ^
  [javadoc] /tickets/bouncycastle/src-cvs/java/crypto/build/artifacts/jdk1.5/bcprov-jdk15on-147/src/org/bouncycastle/jce/provider/test/AllTests.java:6: package junit.framework does not exist
  [javadoc] import junit.framework.TestCase;
  [javadoc]                       ^
  [javadoc] /tickets/bouncycastle/src-cvs/java/crypto/build/artifacts/jdk1.5/bcprov-jdk15on-147/src/org/bouncycastle/jce/provider/test/AllTests.java:7: package junit.framework does not exist
  [javadoc] import junit.framework.TestSuite;

任何帮助表示赞赏。

4

2 回答 2

9

我已经设法从充气城堡源生成带有调试信息的 jar。

在 ROOT_SRC/bc-build.properties 中,将 release.debug 设置为 true

release.suffix: 147
release.name: 1.47
release.debug: true

该构建期望邮件(sun 实现)和 junit jar 在类路径中可用。我已将它们放到 jdk/jre/lib/ext 上,并且构建工作正常。工件是在 ROOT_SRC/build 目录中生成的。

于 2012-10-15T13:50:21.717 回答
4

bcprov-jdk15on您可以排除并明确引入调试构建的bcprov-debug-jdk15on工件,而不是滚动您自己的构建。

Maven 配置示例:

<dependency>
    <groupId>org.bouncycastle</groupId>
    <artifactId>bcpkix-jdk15on</artifactId>
    <version>${bouncycastle.version}</version>
    <exclusions>
        <exclusion>
            <groupId>org.bouncycastle</groupId>
            <artifactId>bcprov-jdk15on</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.bouncycastle</groupId>
    <artifactId>bcprov-debug-jdk15on</artifactId>
    <version>${bouncycastle.version}</version>
</dependency>

这将允许您调试 bouncycastle 的东西。

于 2019-09-18T13:38:33.787 回答