# Issue in building elasticsearch 7 from source

**URL:** <https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628>\
**Category:** Elasticsearch\
**Created:** [March 2, 2020, 7:02am UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628 "2020-03-02T07:02:20Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![chaitra\_hegde](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/chaitra_hegde/32/54151_2.png) [@chaitra\_hegde](https://discuss.elastic.co/u/chaitra_hegde)\
**Post date:** [March 2, 2020, 7:02am UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628/1 "2020-03-02T07:02:20Z")

</div>

Hi,  
I am building Elasticsearch 7.0.1 from source using gradle. I have installed jdk-11 for the same. But I am facing the below issue.  
`05:42:13.524 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > the compiler java.home must be set to a JDK installation directory for Java 12 but is [/etc/alternatives/java_sdk_11_openjdk] corresponding to [11]`  
So is it mandatory to use jdk-12 or higher version for building Elasticsearch?

---

<div class="post-metadata">

**Author:** ![DavidTurner](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/davidturner/32/22453_2.png) [@DavidTurner](https://discuss.elastic.co/u/DavidTurner)\
**Post date:** [March 2, 2020, 9:41am UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628/2 "2020-03-02T09:41:52Z")

</div>

> [@chaitra\_hegde](#):
>
> So is it mandatory to use jdk-12 or higher version for building Elasticsearch?

[JDK13 is required to build Elasticsearch](https://github.com/elastic/elasticsearch/blob/master/CONTRIBUTING.md#contributing-to-the-elasticsearch-codebase).

---

<div class="post-metadata">

**Author:** ![DavidTurner](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/davidturner/32/22453_2.png) [@DavidTurner](https://discuss.elastic.co/u/DavidTurner)\
**Post date:** [March 2, 2020, 9:43am UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628/3 "2020-03-02T09:43:38Z")

</div>

Correction: I linked to the `master` docs but I just saw you are trying to build an older version. [JDK12 is required to build Elasticsearch 7.0.1](https://github.com/elastic/elasticsearch/blob/v7.0.1/CONTRIBUTING.md#contributing-to-the-elasticsearch-codebase).

---

<div class="post-metadata">

**Author:** ![chaitra\_hegde](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/chaitra_hegde/32/54151_2.png) [@chaitra\_hegde](https://discuss.elastic.co/u/chaitra_hegde)\
**Post date:** [March 3, 2020, 9:26am UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628/4 "2020-03-03T09:26:58Z")

</div>

Okay. Thank you for the response.  
I am using Gradle- "5.2.1", jdk- "12.0.2".  
I am getting the below error while building elasticsearch 7.0.1

```
Task :x-pack:plugin:ml:cpp-snapshot:downloadMachineLearningSnapshot FAILED
FAILURE: Build failed with an exception.

* Where:
Build file '/home/cloud-user/chaitra/elasticsearch-7.0.1/x-pack/plugin/ml/cpp-snapshot/build.gradle' line: 17

* What went wrong:
Execution failed for task ':x-pack:plugin:ml:cpp-snapshot:downloadMachineLearningSnapshot'.
java.net.ConnectException: Connection timed out (Connection timed out)

```

I want to build only Elasticsearch-OSS. So is there any CLI command that can be passed with gradle assemble so that i can build only OSS?

---

<div class="post-metadata">

**Author:** ![DavidTurner](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/davidturner/32/22453_2.png) [@DavidTurner](https://discuss.elastic.co/u/DavidTurner)\
**Post date:** [March 3, 2020, 10:40am UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628/5 "2020-03-03T10:40:57Z")

</div>

> [@chaitra\_hegde](#):
>
> ```auto
> java.net.ConnectException: Connection timed out (Connection timed out)
> 
> ```

Hmm, it looks like your build machine doesn't have internet access. I think internet access is required even for an OSS-only build.

---

<div class="post-metadata">

**Author:** ![chaitra\_hegde](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/chaitra_hegde/32/54151_2.png) [@chaitra\_hegde](https://discuss.elastic.co/u/chaitra_hegde)\
**Post date:** [March 3, 2020, 1:11pm UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628/6 "2020-03-03T13:11:33Z")

</div>

Hi,  
I have proxy configured on the system. With this proxy I am able to reach internet also.  
So the same proxy I am using in gradle assemble command.  
When I was not using the proxy with gradle command, it was failing to reach [jcenter.com](http://jcenter.com). But after using the same proxy with gradle assemble command it went further and started failing and the exception was Connection timed out(as mentioned in previous comment of the post).  
I am using below command for gradle build.  
`gradle assemble -Dorg.gradle.java.home=/path/to/jdk-12.0.2 -Dhttps.proxyHost=xxx.xx.xx.xx -Dhttps.proxyPort=yy`

I am able to reach internet.(After exporting the same proxy as in gradle assemble)  
`-bash-4.2$ wget https://google.com`  
`--2020-03-03 06:37:20-- https://google.com/`  
`Connecting to 135.245.48.34:8000... connected.`  
`Proxy request sent, awaiting response... 301 Moved Permanently`  
` Location: https://www.google.com/ [following]`  
`--2020-03-03 06:37:20-- https://www.google.com/`  
`Connecting to xxx.xx.xx:yy... connected.`  
`Proxy request sent, awaiting response... 200 OK`  
So is there anything I am missing out while building?  
And how can I disable building x-pack?

---

<div class="post-metadata">

**Author:** ![DavidTurner](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/davidturner/32/22453_2.png) [@DavidTurner](https://discuss.elastic.co/u/DavidTurner)\
**Post date:** [March 3, 2020, 1:52pm UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628/7 "2020-03-03T13:52:26Z")

</div>

I could believe that your proxy is causing this issue, but unfortunately I don't know how to resolve it. This part of the build system is really quite different in maintained versions, and looks better integrated with Gradle now so maybe this is fixed. Can you try building a maintained version instead?

---

<div class="post-metadata">

**Author:** ![rjernst](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/rjernst/32/6363_2.png) [@rjernst](https://discuss.elastic.co/u/rjernst)\
**Post date:** [March 3, 2020, 11:05pm UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628/8 "2020-03-03T23:05:14Z")

</div>

By running assemble from the root of the project you will build all distributions. You should find the specific distribution project you want to build and run assemble there. The oss ones have oss in the project name.

---

<div class="post-metadata">

**Author:** ![chaitra\_hegde](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/chaitra_hegde/32/54151_2.png) [@chaitra\_hegde](https://discuss.elastic.co/u/chaitra_hegde)\
**Post date:** [March 5, 2020, 7:28am UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628/9 "2020-03-05T07:28:43Z")

</div>

Hi,  
I have taken the src code of elasticsearch from [https://github.com/elastic/elasticsearch/archive/v7.0.1.zip](https://github.com/elastic/elasticsearch/archive/v7.0.1.zip).  
I tried building the oss-rpm by commenting out the x-pack related gradle files and wherever it failed for x-pack related settings. Finally I am able to build the oss rpm.  
I installed the oss-rpm and evrything is working fine. But I see in curl to elasticsearch for _build\_hash: "Unknown"_. Below is the output.

```
-bash-4.2# curl xxx.xx.xx.xx:9200
    {
      "name" : "node1",
      "cluster_name" : "elasticsearch",
      "cluster_uuid" : "h5dbPsIDQESwzINzj8eq-Q",
      "version" : {
        "number" : "7.0.1",
        "build_flavor" : "oss",
        "build_type" : "rpm",
        "build_hash" : "Unknown",
        "build_date" : "2020-03-04T11:51:06.297438Z",
        "build_snapshot" : false,
        "lucene_version" : "8.0.0",
        "minimum_wire_compatibility_version" : "6.7.0",
        "minimum_index_compatibility_version" : "6.0.0-beta1"
      },
      "tagline" : "You Know, for Search"
    }

```

Why it is taking build\_hash as Unknown? I am missing something here?

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [April 2, 2020, 7:28am UTC](https://discuss.elastic.co/t/issue-in-building-elasticsearch-7-from-source/221628/10 "2020-04-02T07:28:49Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
