Java 如何构建和运行okhttp 3.10.0
我从中克隆代码 我想阅读3.10.0版本的源代码 但它无法成功编译Java 如何构建和运行okhttp 3.10.0,java,android,maven,okhttp,Java,Android,Maven,Okhttp,我从中克隆代码 我想阅读3.10.0版本的源代码 但它无法成功编译 gongzelong:okhttp gongzelong$ git branch master * parent-3.10.0 添加我的答案中的代码后,它可以运行“mvn clean verify” 但IDEA显示了如下错误: 您还可以将该库添加到演示项目中,android studio中的将其更改为项目文件夹。您可以在外部库中找到它 或者您可以下载它,然后使用VsCode编辑器打开它并阅读 对于org.mortbay.
gongzelong:okhttp gongzelong$ git branch
master
* parent-3.10.0
添加我的答案中的代码后,它可以运行“mvn clean verify”
但IDEA显示了如下错误:
您还可以将该库添加到演示项目中,android studio中的将其更改为
项目
文件夹。您可以在外部库中找到它
或者您可以下载它,然后使用VsCode
编辑器打开它并阅读
对于org.mortbay.jetty.alpn:alpn boot:jar必须是有效版本,但为“${alpn.jdk8.version}”
在他们的体格里,他们有
def alpnBootVersion() {
def version = System.getProperty('alpn.boot.version')
if (version != null) {
return version
}
他们可能在本地gradle.properties中添加了alpn.jdk8.version作为变量。将
def version=System.getProperty('alpn.boot.version')
更改为def version=8.1.13
,这应该可以解决问题。这是因为我的java版本缺少alpn版本
gongzelong:okhttp gongzelong$java-版本
java版本“1.8.0_172”
Java(TM)SE运行时环境(build 1.8.0_172-b11)
Java HotSpot(TM)64位服务器虚拟机(构建25.172-b11,混合模式)
因此,在我在文件中添加以下代码之后
/Users/gongzelong/Android/okhttp/pom.xml
gongzelong:okhttp gongzelong$ git diff
diff --git a/pom.xml b/pom.xml
index 8b87c2038..274159c3e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -620,5 +620,14 @@
<alpn.jdk8.version>8.1.12.v20180117</alpn.jdk8.version>
</properties>
</profile>
+ <profile>
+ <id>alpn-when-jdk8_172</id>
+ <activation>
+ <jdk>1.8.0_172</jdk>
+ </activation>
+ <properties>
+ <alpn.jdk8.version>8.1.12.v20180117</alpn.jdk8.version>
+ </properties>
+ </profile>
</profiles>
</project>
gongzelong:okhttp gongzelong$git diff
diff——git a/pom.xml b/pom.xml
索引8b87c2038..274159c3e 100644
---a/pom.xml
+++b/pom.xml
@@ -620,5 +620,14 @@
8.1.12.v20180117
+
+alpn-when-jdk8_172
+
+ 1.8.0_172
+
+
+8.1.12.v20180117
+
+
它可以运行“mvn clean verify”和“mvn clean install”。这是一个选项,但问题发生的原因以及如何直接解决?您可以尝试Isaame answer。但是OkHttp是一个纯库如果你使用android studio打开它,你必须使用导入模块或添加库方法。你提到的代码属于3.10.0版本?3.10中似乎没有此类代码。0@FrancisBacon检查他们的build.gradle,它是8天前编辑的:你的意思是试图构建okhttp的最新源代码。但是如何构建3.10.0源代码呢?正如@Lenoarod所说:“OkHttp是一个纯库,如果你使用android studio打开它,你必须使用导入模块或添加库方法。”。它不是作为一个独立的项目来构建的。我是通过IDEA打开的,所以我应该使用maven来编译这个项目。而且CONTRIBUTE.MD说,它可以成功运行“mvn clean verify”。我希望它能帮助您:@ViralPatel谢谢,在本地添加jar之前,我更愿意找出它找不到jar的原因,它有7.1.2.v20141202 alpn。但IDEA显示错误。请提供日志或错误message@ViralPatel关于想法错误,请检查屏幕截图。我的意思是错误在IDEA中显示出来了。”mvn clean verify’在我完成了我在回答中所说的之后现在运行良好。如何在Gradle中实现okhttp?
gongzelong:okhttp gongzelong$ git diff
diff --git a/pom.xml b/pom.xml
index 8b87c2038..274159c3e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -620,5 +620,14 @@
<alpn.jdk8.version>8.1.12.v20180117</alpn.jdk8.version>
</properties>
</profile>
+ <profile>
+ <id>alpn-when-jdk8_172</id>
+ <activation>
+ <jdk>1.8.0_172</jdk>
+ </activation>
+ <properties>
+ <alpn.jdk8.version>8.1.12.v20180117</alpn.jdk8.version>
+ </properties>
+ </profile>
</profiles>
</project>