Unpacking Software Livestream

Join our monthly Unpacking Software livestream to hear about the latest news, chat and opinion on packaging, software deployment and lifecycle management!

Learn More

Chocolatey Product Spotlight

Join the Chocolatey Team on our regular monthly stream where we put a spotlight on the most recent Chocolatey product releases. You'll have a chance to have your questions answered in a live Ask Me Anything format.

Learn More

Chocolatey Coding Livestream

Join us for the Chocolatey Coding Livestream, where members of our team dive into the heart of open source development by coding live on various Chocolatey projects. Tune in to witness real-time coding, ask questions, and gain insights into the world of package management. Don't miss this opportunity to engage with our team and contribute to the future of Chocolatey!

Learn More

Calling All Chocolatiers! Whipping Up Windows Automation with Chocolatey Central Management

Webinar from
Wednesday, 17 January 2024

We are delighted to announce the release of Chocolatey Central Management v0.12.0, featuring seamless Deployment Plan creation, time-saving duplications, insightful Group Details, an upgraded Dashboard, bug fixes, user interface polishing, and refined documentation. As an added bonus we'll have members of our Solutions Engineering team on-hand to dive into some interesting ways you can leverage the new features available!

Watch On-Demand
Chocolatey Community Coffee Break

Join the Chocolatey Team as we discuss all things Community, what we do, how you can get involved and answer your Chocolatey questions.

Watch The Replays
Chocolatey and Intune Overview

Webinar Replay from
Wednesday, 30 March 2022

At Chocolatey Software we strive for simple, and teaching others. Let us teach you just how simple it could be to keep your 3rd party applications updated across your devices, all with Intune!

Watch On-Demand
Chocolatey For Business. In Azure. In One Click.

Livestream from
Thursday, 9 June 2022

Join James and Josh to show you how you can get the Chocolatey For Business recommended infrastructure and workflow, created, in Azure, in around 20 minutes.

Watch On-Demand
The Future of Chocolatey CLI

Livestream from
Thursday, 04 August 2022

Join Paul and Gary to hear more about the plans for the Chocolatey CLI in the not so distant future. We'll talk about some cool new features, long term asks from Customers and Community and how you can get involved!

Watch On-Demand
Hacktoberfest Tuesdays 2022

Livestreams from
October 2022

For Hacktoberfest, Chocolatey ran a livestream every Tuesday! Re-watch Cory, James, Gary, and Rain as they share knowledge on how to contribute to open-source projects such as Chocolatey CLI.

Watch On-Demand

Downloads:

104,366

Downloads of v 3.5.0-alpha02:

288

Last Update:

30 Jun 2018

Package Maintainer(s):

Software Author(s):

  • Emil Eifrem
  • Johan Svensson

Tags:

neo4j graph community database nosql admin

Neo4j Community Edition

This is a prerelease version of Neo4j Community Edition.

  • 1
  • 2
  • 3

3.5.0-alpha02 | Updated: 30 Jun 2018

Downloads:

104,366

Downloads of v 3.5.0-alpha02:

288

Maintainer(s):

Software Author(s):

  • Emil Eifrem
  • Johan Svensson

Neo4j Community Edition 3.5.0-alpha02

This is a prerelease version of Neo4j Community Edition.

Legal Disclaimer: Neither this package nor Chocolatey Software, Inc. are affiliated with or endorsed by Emil Eifrem, Johan Svensson. The inclusion of Emil Eifrem, Johan Svensson trademark(s), if any, upon this webpage is solely to identify Emil Eifrem, Johan Svensson goods or services and not for commercial purposes.

  • 1
  • 2
  • 3

All Checks are Passing

3 Passing Tests


Validation Testing Passed


Verification Testing Passed

Details

Scan Testing Successful:

No detections found in any package files

Details
Learn More

Deployment Method: Individual Install, Upgrade, & Uninstall

To install Neo4j Community Edition, run the following command from the command line or from PowerShell:

>

To upgrade Neo4j Community Edition, run the following command from the command line or from PowerShell:

>

To uninstall Neo4j Community Edition, run the following command from the command line or from PowerShell:

>

Deployment Method:

NOTE

This applies to both open source and commercial editions of Chocolatey.

1. Enter Your Internal Repository Url

(this should look similar to https://community.chocolatey.org/api/v2/)


2. Setup Your Environment

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

2. Get the package into your environment

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://community.chocolatey.org/api/v2/. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Copy Your Script

choco upgrade neo4j-community -y --source="'INTERNAL REPO URL'" --version="'3.5.0-alpha02'" --prerelease [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:


choco upgrade neo4j-community -y --source="'INTERNAL REPO URL'" --version="'3.5.0-alpha02'" --prerelease
$exitCode = $LASTEXITCODE

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0
}

Exit $exitCode

- name: Install neo4j-community
  win_chocolatey:
    name: neo4j-community
    version: '3.5.0-alpha02'
    source: INTERNAL REPO URL
    state: present
    allow_prerelease: yes

See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.


chocolatey_package 'neo4j-community' do
  action    :install
  source   'INTERNAL REPO URL'
  version  '3.5.0-alpha02'
  options  '--prerelease'
end

See docs at https://docs.chef.io/resource_chocolatey_package.html.


cChocoPackageInstaller neo4j-community
{
    Name        = "neo4j-community"
    Version     = "3.5.0-alpha02"
    Source      = "INTERNAL REPO URL"
    chocoParams = "--prerelease"
}

Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.


package { 'neo4j-community':
  ensure          => '3.5.0-alpha02',
  install_options => ['--prerelease'],
  provider        => 'chocolatey',
  source          => 'INTERNAL REPO URL',
}

Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.


4. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

Package Approved

This package was approved as a trusted package on 30 Jun 2018.

Description

Neo4j is the world's leading Graph Database. It is a high performance graph store with all the features expected of a mature and robust database, like a friendly query language and ACID transactions. The programmer works with a flexible network structure of nodes and relationships rather than static tables yet enjoys all the benefits of enterprise-quality database. For many applications, Neo4j offers orders of magnitude performance benefits compared to relational DBs.

Note - This chocolatey package is not created or maintained by Neo4j, however the installation media used is an official distribution from Neo4j

  • Requires OpenJDK 8 or Oracle Java 8 to be installed as per http://neo4j.com/docs/stable/deployment-requirements.html#_software
  • This package only installs the 64 bit version
  • This chocolatey package supports Package Parameters;
    /Install:[Install Path]
    /ImportNeoProperties:[Path to file]
    /ImportServiceProperties:[Path to file]
    /HTTPEndPoint:[Host/IP:port]
    /HTTPSEndPoint:[Host/IP:port]
    /ServiceName:[Windows Service Name]

This will install BETA software and is for development only

e.g. choco install neo4j-community -version 3.5.0-alpha02 -prerelease -packageParameters "/Install:C:\Apps\Neo"

Full information is available at the pacakge project site https://github.com/glennsarti/neo4j-community-chocolatey


tools\chocolateyInstall.ps1
$PackageName = 'neo4j-community'
# Per-package parameters
$downloadUrl = 'http://neo4j.com/artifact.php?name=neo4j-community-3.5.0-alpha02-windows.zip'
$md5Checksum = 'ee3f5c62f4787e231425ce09880aa7b8'
$neozipSubdir = 'neo4j-community-3.5.0-alpha02'
# major.minor.update.build
# Build is always 14
$privateJavaVersion = "8.0.131.11"
$privateJreChecksumMD5 = "9458b62000daac0f48155323185f1c4c"

# START Helper Functions
Function Get-IsJavaInstalled
{
  [cmdletBinding(SupportsShouldProcess=$false,ConfirmImpact='Low',DefaultParameterSetName='Default')]
  param ()
  
  Process
  {
    $javaPath = ''
    $javaVersion = ''
    $javaCMD = ''
    
    $EnvJavaHome = "$($Env:JAVA_HOME)"
    
    # Is JAVA specified in an environment variable
    if (($javaPath -eq '') -and ($EnvJavaHome -ne $null))
    {
      $javaPath = $EnvJavaHome
      # Modify the java path if a JRE install is detected
      if (Test-Path -Path "$javaPath\bin\javac.exe") { $javaPath = "$javaPath\jre" }
    }

    # Attempt to find Java in registry
    $regKey = 'Registry::HKLM\SOFTWARE\JavaSoft\Java Runtime Environment'    
    if (($javaPath -eq '') -and (Test-Path -Path $regKey))
    {
      $javaVersion = ''
      try
      {
        $javaVersion = [string](Get-ItemProperty -Path $regKey -ErrorAction 'Stop').CurrentVersion
        if ($javaVersion -ne '')
        {
          $javaPath = [string](Get-ItemProperty -Path "$regKey\$javaVersion" -ErrorAction 'Stop').JavaHome
        }
      }
      catch
      {
        #Ignore any errors
        $javaVersion = ''
        $javaPath = ''
      }
    }

    # Attempt to find Java in registry (32bit Java on 64bit OS)
    $regKey = 'Registry::HKLM\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment'    
    if (($javaPath -eq '') -and (Test-Path -Path $regKey))
    {
      $javaVersion = ''
      try
      {
        $javaVersion = [string](Get-ItemProperty -Path $regKey -ErrorAction 'Stop').CurrentVersion
        if ($javaVersion -ne '')
        {
          $javaPath = [string](Get-ItemProperty -Path "$regKey\$javaVersion" -ErrorAction 'Stop').JavaHome
        }
      }
      catch
      {
        #Ignore any errors
        $javaVersion = ''
        $javaPath = ''
      }
    }
    
    # Attempt to find Java in the search path
    if ($javaPath -eq '')
    {
      $javaExe = (Get-Command 'java.exe' -ErrorAction SilentlyContinue)
      if ($javaExe -ne $null)
      {
        $javaCMD = $javaExe.Path
        $javaPath = Split-Path -Path $javaCMD -Parent
      }
    }

    if ($javaPath -eq '') { Write-Host "Unable to determine the path to java.exe"; return $false }
    if ($javaCMD -eq '') { $javaCMD = "$javaPath\bin\java.exe" }
    if (-not (Test-Path -Path $javaCMD)) { Write-Error "Could not find java at $javaCMD"; return $false }
 
    return $true
  }
}
function Invoke-ModifyConfig($File,$Key,$Value) {
  Write-Verbose "Setting $($Key)=$($Value) in file $File"
  $RegexKey = $Key.Replace('.','\.')
    
  $fileContent = [IO.File]::ReadAllText($File)
  
  $found = $false
  if ($fileContent -match "(?mi)^$($RegexKey)=") {
    Write-Verbose "Found $Key"
    $fileContent = $fileContent -replace "(?mi)^$($RegexKey)=.+$","$($Key)=$($Value)"
    $found = $true
  }

  if ($fileContent -match "(?mi)^#$($RegexKey)=") {
    Write-Verbose "Found $Key in a comment"   
    $fileContent = $fileContent -replace "(?mi)^#$($RegexKey)=.+$","$($Key)=$($Value)"
    $found = $true    
  }
  
  if (-not $found) {
    Write-Verbose "Adding $key"
    $fileContent += "`n$($Key)=$($Value)"
  }

  $Utf8NoBomEncoding = New-Object System.Text.UTF8Encoding($False)
  [IO.File]::WriteAllText($File,$fileContent,$Utf8NoBomEncoding) | Out-NUll
}

function Invoke-InstallPrivateJRE($Destination) {
  # Adpated from the server-jre8 chocolatey package
  # https://github.com/rgra/choco-packages/tree/master/server-jre8

  Write-Host "Installing Server JRE $privateJavaVersion to $Destination"

  #8.0.xx to jdk1.8.0_xx
  $versionArray = $privateJavaVersion.Split(".")
  $majorVersion = $versionArray[0]
  $minorVersion = $versionArray[1]
  $updateVersion = $versionArray[2]
  $buildNumber = $versionArray[3]
  $folderVersion = "jdk1.$majorVersion.$($minorVersion)_$updateVersion"

  $fileNameBase = "server-jre-$($majorVersion)u$($updateVersion)-windows-x64"
  $fileName = "$fileNameBase.tar.gz"

  $url = "http://download.oracle.com/otn-pub/java/jdk/$($majorVersion)u$($updateVersion)-b$buildNumber/d54c1d3a095b4ff2b6607d096fa80163/$fileName"

  # Download location info
  $tempDir = Join-Path -Path $ENV:Temp -ChildPath "choco_jre_$PackageName"
  $tarGzFile = "$tempDir\$fileName"
  $tarFile = "$tempDir\$fileNameBase.tar"

  # Cleanup
  if (Test-Path -Path $tempDir) { Remove-Item -Path $tempDir -Force -Recurse -Confirm:$false | Out-Null }

  New-Item -Path $tempDir -ItemType 'Directory' | Out-Null

  $webClient = New-Object System.Net.WebClient
  $result = $webClient.headers.Add('Cookie','gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie')
  Write-Host "Downloading $url ..."
  $result = $webClient.DownloadFile($url, $tarGzFile)
  Get-ChecksumValid $tarGzFile $privateJreChecksumMD5 | Out-Null

  #Extract gz to .tar File
  Get-ChocolateyUnzip $tarGzFile $tempDir | Out-Null
  #Extract tar to destination
  Get-ChocolateyUnzip $tarFile $Destination | Out-Null

  # Cleanup
  if (Test-Path -Path $tempDir) { Remove-Item -Path $tempDir -Force -Recurse -Confirm:$false | Out-Null }

  # return the JAVA_HOME path
  Write-Output (Get-ChildItem -Path $Destination | Select -First 1).FullName
}
# END Helper Functions

try {
  # Taken from https://github.com/chocolatey/chocolatey/wiki/How-To-Parse-PackageParameters-Argument
  $arguments = @{};
  
  # Now, we can use the $env:chocolateyPackageParameters inside the Chocolatey package
  $packageParameters = $env:chocolateyPackageParameters;

  # Default the install root
  try {
    $InstallDir = Get-ToolsLocation -ErrorAction Stop
  } catch {
    # On older chocolatey versions Get-ToolsLocation may not exist as a function.
    #  Fall back to Get-BinRoot
    $InstallDir = Get-BinRoot
  }
  # Default the values
  $InstallDir = Join-Path -Path $InstallDir -ChildPath $PackageName
  $ImportNeoProperties = ""
  $ImportServiceProperties = ""
  $WindowsServiceName = ""
  $HTTPEndpoint = ""
  $HTTPSEndpoint = ""
    
  # Now, let’s parse the packageParameters using good old regular expression
  if($packageParameters) {
      $MATCH_PATTERN = "\/([a-zA-Z]+):([`"'])?([a-zA-Z0-9- _\\:\.]+)([`"'])?"
      $PARAMATER_NAME_INDEX = 1
      $VALUE_INDEX = 3

      if($packageParameters -match $MATCH_PATTERN ){
          $results = $packageParameters | Select-String $MATCH_PATTERN -AllMatches
          $results.matches | % {
            $arguments.Add(
                $_.Groups[$PARAMATER_NAME_INDEX].Value.Trim(),
                $_.Groups[$VALUE_INDEX].Value.Trim())
        }
      }
      else
      {
        Throw "Package Parameters were found but were invalid (REGEX Failure)";
      }

      if($arguments.ContainsKey("install")) {
          Write-Verbose "Install Argument Found";
          $InstallDir = $arguments["install"];
      }

      if($arguments.ContainsKey("importneoproperties")) {
          Write-Verbose "ImportNeoProperties Argument Found";
          $ImportNeoProperties = $arguments["importneoproperties"];
      }

      if($arguments.ContainsKey("importserviceproperties")) {
          Write-Verbose "ImportServiceProperties Argument Found";
          $ImportServiceProperties = $arguments["importserviceproperties"];
      }

      if($arguments.ContainsKey("servicename")) {
          Write-Verbose "ServiceName Argument Found";
          $WindowsServiceName = $arguments["servicename"];
      }

      if($arguments.ContainsKey("httpendpoint")) {
          Write-Verbose "HTTPEndPoint Argument Found";
          $HTTPEndpoint = $arguments["httpendpoint"];
      }

      if($arguments.ContainsKey("httpsendpoint")) {
          Write-Verbose "HTTPSEndpoint Argument Found";
          $HTTPSEndpoint = $arguments["httpsendpoint"];
      }
  } else {
      Write-Verbose "No Package Parameters Passed in";
  }

  $silentArgs = "/install:" + $InstallDir
  if ($WindowsServiceName -ne "") {
    $silentArgs += " /servicename:" + $WindowsServiceName
  }
  if ($HTTPEndpoint -ne "") {
    $silentArgs += " /httpendpoint:" + $HTTPEndpoint
  }
  if ($HTTPSEndpoint -ne "") {
    $silentArgs += " /httpsendpoint:" + $HTTPSEndpoint
  }
  if ($ImportNeoProperties -ne "") {
    $silentArgs += " /importneoproperties:" + $ImportNeoProperties
  }
  if ($ImportServiceProperties -ne "") {
    $silentArgs += " /importserviceproperties:" + $ImportServiceProperties
  }
  Write-Verbose "This would be the Chocolatey Silent Arguments: $silentArgs"

  # Sanity Checks
  If ($ImportNeoProperties -ne "") {
    If (!(Test-Path -Path $ImportNeoProperties)) { Throw "Could not find the NeoProperties file to import. $ImportNeoProperties" }
  }
  If ($ImportServiceProperties -ne "") {
    If (!(Test-Path -Path $ImportServiceProperties)) { Throw "Could not find the ServiceProperties file to import. $ImportServiceProperties" }
  }

  # Install Neo4j
  Install-ChocolateyZipPackage -PackageName $PackageName -URL $downloadUrl -UnzipLocation $InstallDir -CheckSum $md5Checksum -CheckSumType 'md5'
  $neoHome = "$($InstallDir)\$($neozipSubdir)"
  Install-ChocolateyEnvironmentVariable "NEO4J_HOME" "$neoHome" "Machine"

  # Import config files if required
  If ($ImportNeoProperties -ne "") {
    Write-Verbose "Importing the neo4j.conf from $ImportNeoProperties"
    [void] (Copy-Item -Path $ImportNeoProperties -Destination "$($neoHome)\conf\neo4j.conf" -Force -Confirm:$false)
  }
  If ($ImportServiceProperties -ne "") {
    Write-Verbose "Importing the neo4j-wrapper.conf from $ImportServiceProperties"
    [void] (Copy-Item -Path $ImportServiceProperties -Destination "$($neoHome)\conf\neo4j-wrapper.conf" -Force -Confirm:$false)
  }
    
  # Override with package params
  if ($HTTPEndpoint -ne "") {
    Invoke-ModifyConfig -File "$($neoHome)\conf\neo4j.conf" -Key "dbms.connector.http.address" -Value $HTTPEndpoint | Out-Null
  }
  if ($HTTPSEndpoint -ne "") {
    Invoke-ModifyConfig -File "$($neoHome)\conf\neo4j.conf" -Key "dbms.connector.https.address" -Value $HTTPSEndpoint | Out-Null
  }
  if ($WindowsServiceName -ne "") {
    Invoke-ModifyConfig -File "$($neoHome)\conf\neo4j-wrapper.conf" -Key "dbms.windows_service_name" -Value $WindowsServiceName | Out-Null
  }

  # Check if Java is available
  # This check will not be required once a suitable Java SDK 8 chocolatey package is available in the public feed. This is expected in Feb 2015 sometime.
  if (-not (Get-IsJavaInstalled) ) {
    Write-Host "Java was not detected.  Installing a private JRE for Neo4j"
    $privatePath = Invoke-InstallPrivateJRE -Destination "$($neoHome)\java"
    Write-Host "--------------------"
    Write-Host "Before using Neo4j tools, ensure you have set the JAVA_HOME"
    Write-Host "environment variable to $($privatePath)"
    Write-Host ""
    Write-Host "For example, in a command prompt:"
    Write-Host "SET JAVA_HOME=$($privatePath)"
    Write-Host ""
    Write-Host "For example, in a PowerShell console:"
    Write-Host "`$ENV:JAVA_HOME = '$($privatePath)'"
    Write-Host ""
    Write-Host "--------------------"
    $ENV:JAVA_HOME = $privatePath
  }

  # Install the Neo4j Service
  $InstallBatch = "$($neoHome)\bin\Neo4j.bat"
  if (!(Test-Path $InstallBatch)) { throw "Could not find the Neo4j Installer Batch file at $InstallBatch" }
  
  Write-Verbose "Installing Neo4j Service..."
  $args = "install-service"
  $result = Start-Process -FilePath $InstallBatch -ArgumentList $args -Wait -PassThru -NoNewWindow
  
  if ($result.ExitCode -ne 0) { Throw "Neo4j installation returned exit code $($result.ExitCode)"}
  
  Write-Verbose "Starting Neo4j Service..."
  $args = "start"
  $result = Start-Process -FilePath $InstallBatch -ArgumentList $args -Wait -PassThru -NoNewWindow
  
} catch {
  throw "$($_.Exception.Message)"
}
tools\chocolateyUninstall.ps1
$PackageName = 'neo4j-community'

Function Get-IsJavaInstalled()
{
  [cmdletBinding(SupportsShouldProcess=$false,ConfirmImpact='Low',DefaultParameterSetName='Default')]
  param (
    $Neo4jHome
  )
  
  Process
  {
    $javaPath = ''
    $javaVersion = ''
    $javaCMD = ''
    
    $EnvJavaHome = "$($Env:JAVA_HOME)"
    
    # Is JAVA specified in an environment variable
    if (($javaPath -eq '') -and ($EnvJavaHome -ne $null))
    {
      $javaPath = $EnvJavaHome
      # Modify the java path if a JRE install is detected
      if (Test-Path -Path "$javaPath\bin\javac.exe") { $javaPath = "$javaPath\jre" }
    }

    # Attempt to find Java in registry
    $regKey = 'Registry::HKLM\SOFTWARE\JavaSoft\Java Runtime Environment'    
    if (($javaPath -eq '') -and (Test-Path -Path $regKey))
    {
      $javaVersion = ''
      try
      {
        $javaVersion = [string](Get-ItemProperty -Path $regKey -ErrorAction 'Stop').CurrentVersion
        if ($javaVersion -ne '')
        {
          $javaPath = [string](Get-ItemProperty -Path "$regKey\$javaVersion" -ErrorAction 'Stop').JavaHome
        }
      }
      catch
      {
        #Ignore any errors
        $javaVersion = ''
        $javaPath = ''
      }
    }

    # Attempt to find Java in registry (32bit Java on 64bit OS)
    $regKey = 'Registry::HKLM\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment'    
    if (($javaPath -eq '') -and (Test-Path -Path $regKey))
    {
      $javaVersion = ''
      try
      {
        $javaVersion = [string](Get-ItemProperty -Path $regKey -ErrorAction 'Stop').CurrentVersion
        if ($javaVersion -ne '')
        {
          $javaPath = [string](Get-ItemProperty -Path "$regKey\$javaVersion" -ErrorAction 'Stop').JavaHome
        }
      }
      catch
      {
        #Ignore any errors
        $javaVersion = ''
        $javaPath = ''
      }
    }
    
    # Attempt to find Java in the search path
    if ($javaPath -eq '')
    {
      $javaExe = (Get-Command 'java.exe' -ErrorAction SilentlyContinue)
      if ($javaExe -ne $null)
      {
        $javaCMD = $javaExe.Path
        $javaPath = Split-Path -Path $javaCMD -Parent
      }
    }

    # Attempt to private jre
    $privateJRE = Join-Path -Path $Neo4jHome -ChildPath 'java'
    if ( ($javaPath -eq '') -and (Test-Path -Path $privateJRE) )
    {
      $privateJRE = (Get-ChildItem -Path "$privateJRE" | Select -First 1).FullName

      if (Test-Path -Path "$privateJRE\bin\java.exe") {
        $javaCMD = "$privateJRE\bin\java.exe"
        $javaPath = $privateJRE
      }
    }

    if ($javaPath -eq '') { Write-Host "Unable to determine the path to java.exe"; return $false }
    if ($javaCMD -eq '') { $javaCMD = "$javaPath\bin\java.exe" }
    if (-not (Test-Path -Path $javaCMD)) { Write-Error "Could not find java at $javaCMD"; return $false }
 
    return $javaPath
  }
}

try {
  # Get the NeoHome Dir
  #   Try the local environment
  $neoHome = [string] (Get-EnvironmentVariable -Name 'NEO4J_HOME' -Scope 'Machine')
  # Failing that, try a registry hack
  if ($neoHome -eq '')
  {
    $neoHome = [string] ( (Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment' -ErrorAction Continue).'NEO4J_HOME' )
  }
  if ($neoHome -eq '') { throw "Could not find the Neo4j installation via the NEO4J_HOME environment variable" }

  $javaPath = (Get-IsJavaInstalled -Neo4jHome $neoHome)
  if ($javaPath -eq '') { throw "Could not find a Java installation" }
  # Temporarily set the JAVA_HOME environment variable
  $ENV:JAVA_HOME = $javaPath

  # Uninstall the Neo4j Service
  $UninstallBatch = "$($neoHome)\bin\Neo4j.bat"
  if (!(Test-Path $UninstallBatch)) { throw "Could not find the Neo4j Uninstaller Batch file at $UninstallBatch" }
  
  Write-Verbose "Uninstalling Neo4j Service..."
  $args = "uninstall-service"
  $result = Start-Process -FilePath $UninstallBatch -ArgumentList $args -Wait -PassThru -NoNewWindow

  if ($result.ExitCode -ne 0) { Throw "Neo4j uninstallation returned exit code $($result.ExitCode)"}

  # Remove the install folder
  Remove-Item -Path $neoHome -Recurse -Force | Out-Null
  
  # Remove the environment variable
  Install-ChocolateyEnvironmentVariable "NEO4J_HOME" '' "Machine"
} catch {
  throw "$($_.Exception.Message)"
}

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Add to Builder Version Downloads Last Updated Status
Neo4j Community Edition 3.5.0 368 Thursday, November 29, 2018 Approved
Neo4j Community Edition 3.5.0-rc01-beta 267 Saturday, November 17, 2018 Approved
Neo4j Community Edition 3.5.0-beta03-beta 249 Saturday, October 27, 2018 Approved
Neo4j Community Edition 3.5.0-beta02-beta 221 Thursday, October 18, 2018 Approved
Neo4j Community Edition 3.5.0-beta01-beta 244 Saturday, September 29, 2018 Approved
Neo4j Community Edition 3.5.0-alpha09 229 Saturday, September 15, 2018 Approved
Neo4j Community Edition 3.5.0-alpha08 244 Thursday, September 6, 2018 Approved
Neo4j Community Edition 3.5.0-alpha07 276 Friday, August 17, 2018 Approved
Neo4j Community Edition 3.5.0-alpha06 288 Saturday, August 4, 2018 Approved
Neo4j Community Edition 3.5.0-alpha05 248 Wednesday, July 25, 2018 Approved
Neo4j Community Edition 3.5.0-alpha04 302 Wednesday, July 11, 2018 Approved
Neo4j Community Edition 3.5.0-alpha02 288 Saturday, June 30, 2018 Approved
Neo4j Community Edition 3.5.0-alpha01 313 Tuesday, May 29, 2018 Approved
Neo4j Community Edition 3.4.11 283 Tuesday, December 18, 2018 Approved
Neo4j Community Edition 3.4.10 291 Thursday, November 15, 2018 Approved
Neo4j Community Edition 3.4.9 341 Monday, October 15, 2018 Approved
Neo4j Community Edition 3.4.8 359 Friday, October 5, 2018 Approved
Neo4j Community Edition 3.4.7 439 Saturday, September 1, 2018 Approved
Neo4j Community Edition 3.4.6 343 Friday, August 17, 2018 Approved
Neo4j Community Edition 3.4.5 376 Friday, July 27, 2018 Approved
Neo4j Community Edition 3.4.4 377 Thursday, July 12, 2018 Approved
Neo4j Community Edition 3.4.3 370 Friday, July 6, 2018 Approved
Neo4j Community Edition 3.4.1 398 Wednesday, June 13, 2018 Approved
Neo4j Community Edition 3.4.0 405 Thursday, May 17, 2018 Approved
Neo4j Community Edition 3.4.0-rc02-beta 306 Thursday, May 10, 2018 Approved
Neo4j Community Edition 3.4.0-rc01-beta 338 Saturday, April 28, 2018 Approved
Neo4j Community Edition 3.4.0-beta02-beta 317 Wednesday, April 18, 2018 Approved
Neo4j Community Edition 3.4.0-beta01-beta 324 Wednesday, April 4, 2018 Approved
Neo4j Community Edition 3.4.0-alpha10 360 Wednesday, March 21, 2018 Approved
Neo4j Community Edition 3.4.0-alpha09 351 Tuesday, March 6, 2018 Approved
Neo4j Community Edition 3.4.0-alpha08 358 Wednesday, February 21, 2018 Approved
Neo4j Community Edition 3.4.0-alpha06 365 Tuesday, January 23, 2018 Approved
Neo4j Community Edition 3.4.0-alpha05 370 Wednesday, January 10, 2018 Approved
Neo4j Community Edition 3.4.0-alpha04 409 Friday, January 5, 2018 Approved
Neo4j Community Edition 3.3.9 270 Saturday, November 3, 2018 Approved
Neo4j Community Edition 3.3.8 251 Thursday, November 1, 2018 Approved
Neo4j Community Edition 3.3.7 268 Thursday, September 13, 2018 Approved
Neo4j Community Edition 3.3.6 313 Saturday, June 23, 2018 Approved
Neo4j Community Edition 3.3.5 523 Thursday, April 12, 2018 Approved
Neo4j Community Edition 3.3.4 434 Friday, March 16, 2018 Approved
Neo4j Community Edition 3.3.3 472 Wednesday, February 14, 2018 Approved
Neo4j Community Edition 3.3.2 448 Tuesday, January 23, 2018 Approved
Neo4j Community Edition 3.3.1 510 Friday, January 5, 2018 Approved
Neo4j Community Edition 3.3.0-rc1-beta 435 Thursday, October 5, 2017 Approved
Neo4j Community Edition 3.3.0-beta02-beta 402 Friday, September 22, 2017 Approved
Neo4j Community Edition 3.3.0-beta01-beta 386 Thursday, September 14, 2017 Approved
Neo4j Community Edition 3.3.0-alpha07 350 Wednesday, August 30, 2017 Approved
Neo4j Community Edition 3.3.0-alpha06 384 Thursday, August 17, 2017 Approved
Neo4j Community Edition 3.3.0-alpha05 366 Wednesday, August 2, 2017 Approved
Neo4j Community Edition 3.3.0-alpha04 381 Friday, July 14, 2017 Approved
Neo4j Community Edition 3.3.0-alpha03 426 Monday, July 3, 2017 Approved
Neo4j Community Edition 3.3.0-alpha02 383 Thursday, June 15, 2017 Exempted
Neo4j Community Edition 3.3.0-alpha01 419 Friday, June 2, 2017 Exempted
Neo4j Community Edition 3.2.13 198 Wednesday, October 17, 2018 Approved
Neo4j Community Edition 3.2.12 283 Thursday, May 31, 2018 Approved
Neo4j Community Edition 3.2.11 291 Tuesday, April 24, 2018 Approved
Neo4j Community Edition 3.2.10 288 Tuesday, March 13, 2018 Approved
Neo4j Community Edition 3.2.9 308 Friday, January 5, 2018 Approved
Neo4j Community Edition 3.2.6 552 Tuesday, October 3, 2017 Approved
Neo4j Community Edition 3.2.5 357 Monday, September 18, 2017 Approved
Neo4j Community Edition 3.2.4 390 Wednesday, September 13, 2017 Approved
Neo4j Community Edition 3.2.3 479 Tuesday, August 1, 2017 Approved
Neo4j Community Edition 3.2.2 479 Wednesday, July 5, 2017 Approved
Neo4j Community Edition 3.2.1 435 Monday, June 5, 2017 Approved
Neo4j Community Edition 3.2.0 399 Thursday, May 11, 2017 Approved
Neo4j Community Edition 3.2.0-rc3-beta 367 Monday, May 8, 2017 Approved
Neo4j Community Edition 3.2.0-rc2-beta 405 Friday, May 5, 2017 Approved
Neo4j Community Edition 3.2.0-rc1-beta 419 Thursday, April 27, 2017 Approved
Neo4j Community Edition 3.2.0-alpha08 426 Tuesday, April 11, 2017 Approved
Neo4j Community Edition 3.2.0-alpha07 401 Monday, March 27, 2017 Approved
Neo4j Community Edition 3.2.0-alpha06 385 Friday, March 10, 2017 Approved
Neo4j Community Edition 3.2.0-alpha05 385 Thursday, February 23, 2017 Approved
Neo4j Community Edition 3.2.0-alpha04 414 Tuesday, February 14, 2017 Approved
Neo4j Community Edition 3.2.0-alpha03 424 Friday, January 27, 2017 Approved
Neo4j Community Edition 3.2.0-alpha02 483 Thursday, January 12, 2017 Approved
Neo4j Community Edition 3.2.0-alpha01 393 Wednesday, December 28, 2016 Approved
Neo4j Community Edition 3.1.7 378 Tuesday, October 3, 2017 Approved
Neo4j Community Edition 3.1.6 352 Monday, July 31, 2017 Approved
Neo4j Community Edition 3.1.5 398 Monday, June 5, 2017 Approved
Neo4j Community Edition 3.1.4 424 Tuesday, May 2, 2017 Approved
Neo4j Community Edition 3.1.3 456 Wednesday, March 29, 2017 Approved
Neo4j Community Edition 3.1.2 405 Thursday, March 9, 2017 Approved
Neo4j Community Edition 3.1.1 540 Friday, January 20, 2017 Approved
Neo4j Community Edition 3.1.0 434 Tuesday, December 13, 2016 Approved
Neo4j Community Edition 3.1.0-M10-beta 426 Wednesday, October 5, 2016 Approved
Neo4j Community Edition 3.1.0-M09-beta 436 Monday, October 3, 2016 Approved
Neo4j Community Edition 3.1.0-M08-beta 419 Friday, September 2, 2016 Exempted
Neo4j Community Edition 3.1.0-M07-beta 430 Friday, August 26, 2016 Approved
Neo4j Community Edition 3.0.10 404 Monday, July 3, 2017 Approved
Neo4j Community Edition 3.0.9 384 Thursday, March 16, 2017 Approved
Neo4j Community Edition 3.0.8 388 Tuesday, December 20, 2016 Approved
Neo4j Community Edition 3.0.6 493 Monday, October 3, 2016 Approved
Neo4j Community Edition 3.0.5 429 Monday, October 3, 2016 Approved
Neo4j Community Edition 3.0.4 462 Friday, August 26, 2016 Approved
Neo4j Community Edition 3.0.2 396 Sunday, June 5, 2016 Approved
Neo4j Community Edition 3.0.1 459 Sunday, June 5, 2016 Approved
Neo4j Community Edition 3.0.0 438 Monday, May 2, 2016 Approved
Neo4j Community Edition 3.0.0-RC1-beta 435 Wednesday, April 20, 2016 Approved
Neo4j Community Edition 2.3.12 278 Thursday, March 29, 2018 Approved
Neo4j Community Edition 2.3.11 423 Monday, July 3, 2017 Approved
Neo4j Community Edition 2.3.10 384 Saturday, April 1, 2017 Approved
Neo4j Community Edition 2.3.9 405 Tuesday, January 24, 2017 Approved
Neo4j Community Edition 2.3.8 418 Tuesday, December 13, 2016 Approved
Neo4j Community Edition 2.3.7 418 Monday, October 3, 2016 Approved
Neo4j Community Edition 2.3.6 380 Friday, August 26, 2016 Approved
Neo4j Community Edition 2.3.3 415 Monday, May 2, 2016 Approved
Neo4j Community Edition 2.3.0.20151026 506 Sunday, October 25, 2015 Approved
Neo4j Community Edition 2.3.0-M02-beta 399 Wednesday, June 17, 2015 Approved
Neo4j Community Edition 2.3.0-M01-beta 416 Saturday, May 30, 2015 Approved
Neo4j Community Edition 2.2.10 480 Friday, August 26, 2016 Approved
Neo4j Community Edition 2.2.2.20150617 437 Wednesday, June 17, 2015 Approved
Neo4j Community Edition 2.2.1.20150617 372 Wednesday, June 17, 2015 Approved
Neo4j Community Edition 2.2.0.20150617 355 Wednesday, June 17, 2015 Approved
Neo4j Community Edition 2.2.0-RC01-beta 440 Saturday, March 7, 2015 Approved
Neo4j Community Edition 2.2.0-M04-beta 457 Tuesday, February 17, 2015 Approved
Neo4j Community Edition 2.2.0-M03-beta 464 Tuesday, February 3, 2015 Exempted
Neo4j Community Edition 2.2.0-M02-beta 431 Wednesday, January 21, 2015 Exempted
Neo4j Community Edition 2.1.8.20150617 622 Wednesday, June 17, 2015 Approved
Neo4j Community Edition 2.1.7.20150617 432 Wednesday, June 17, 2015 Approved
Neo4j Community Edition 2.1.6.20152101 467 Wednesday, January 21, 2015 Approved

Full list of changes are available on GitHub; https://github.com/glennsarti/neo4j-community-chocolatey

Version 3.5.0-alpha02

  • Initial Release

This package has no dependencies.

Discussion for the Neo4j Community Edition Package

Ground Rules:

  • This discussion is only about Neo4j Community Edition and the Neo4j Community Edition package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Neo4j Community Edition, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus