A usual installation of Elasticsearch 2.3 would have /usr/local/lib/elasticsearch/modules/ filled with lang-expression, lang-groovy and reindex. This is not the case when installed using the port/package. It also appears absent from plist, so this might be the reason.
Fixed in 2.4.1 upgrade.
A commit references this bug: Author: tj Date: Thu Oct 6 16:35:35 UTC 2016 New revision: 423418 URL: https://svnweb.freebsd.org/changeset/ports/423418 Log: Update to 2.4.1 Make sure modules are installed. Changes: https://www.elastic.co/guide/en/elasticsearch/reference/2.4/release-notes-2.4.1.html PR: 210133, 211197, 209256 Changes: head/textproc/elasticsearch2/Makefile head/textproc/elasticsearch2/distinfo head/textproc/elasticsearch2/pkg-plist