Notices: This section not yet converted to new layout. Download stats are rolling back out.

Nexus Repository OSS

3.12.1.1

Package test results are passing.

Private CDN cached downloads available for licensed customers. Never experience 404 breakages again! Learn more...

This package was approved as a trusted package on 7/19/2018.

Free open source version of popular Nexus Repository for binary artifacts including first class Nuget support.
Free OSS version supports advanced access control (groups, roles), LDAP and per-user api keys.
Nexus product does not have a built-in web gallery for components.

To install Nexus Repository OSS, run the following command from the command line or from PowerShell:

C:\> choco install nexus-repository

To upgrade Nexus Repository OSS, run the following command from the command line or from PowerShell:

C:\> choco upgrade nexus-repository

Files

Hide
  • tools\chocolateyinstall.ps1 Show
    $packageid = "nexus-repository"
    $version = '3.12.1-01'
    $url = "http://download.sonatype.com/nexus/3/nexus-$version-win64.zip"
    $checksum = 'b2b76d007933af0532a2e72c0699a9a48644d7c3'
    $checksumtype = 'SHA1'
    $silentargs = "-q -console -dir `"$installfolder`""
    $validExitCodes = @(0)
    
    $packageName= 'nexus-repository'
    $toolsDir   = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"
    
    $OSBits = Get-ProcessorBits
    
    If (!(Get-ProcessorBits -eq 64))
    {
      Throw "Sonatype Nexus Repository 3.0 and greater only supports 64-bit Windows."
    }
    
    $nexusversionedfolder = "nexus-$version"
    $TargetFolder = "$env:programdata\nexus"
    $ExtractFolder = "$env:temp\NexusExtract"
    $TargetDataFolder = "$env:programdata\sonatype-work"
    $NexusConfigFile = "$TargetDataFolder\nexus3\etc\nexus.properties"
    $servicename = 'nexus'
    $NexusPort = '8081'
    
    $pp = Get-PackageParameters
      
    if ($pp.Port) {
      $NexusPort = $pp.Port
      Write-Host "/Port was used, Nexus will listen on port $NexusPort."
    }
    
    If (Test-Path "$env:ProgramFiles\nexus\bin")
    {
      Throw "Previous version of Nexus 3 installed by setup.exe is present, please uninstall before running this package."
    }
    
    If ([bool](Get-Service $servicename -ErrorAction SilentlyContinue))
    {
      Write-Warning "Nexus web app is already present, shutting it down so that we can upgrade it."
      Stop-Service $servicename -force
    }
    
    If (Test-Path "$ExtractFolder") {Remove-Item "$ExtractFolder" -Recurse -Force}
    
    Install-ChocolateyZipPackage -PackageName $packageName -unziplocation "$ExtractFolder" -url $url -checksum $checksum -checksumtype $checksumtype -url64 $url -checksum64 $checksum -checksumtype64 $checksumtype
    
    Copy-Item "$ExtractFolder\$nexusversionedfolder" "$TargetFolder" -Force -Recurse
    
    If (!(Test-Path "$TargetDataFolder"))
    {
      Move-Item "$extractfolder\sonatype-work" "$TargetDataFolder"
    }
    else 
    {
      Write-Warning "`"$TargetDataFolder`" already exists, not overwriting, residual data from previous installs will not be reset."
    }
    
    Remove-Item "$ExtractFolder" -Force -Recurse
    
    Start-ChocolateyProcessAsAdmin -ExeToRun "$TargetFolder\bin\nexus.exe" -Statements "/install $servicename" -validExitCodes $validExitCodes
    
    #Update Port
    If ($NexusPort -ne '8081')
    {
      $service = Start-Service $servicename -PassThru
      $Service.WaitForStatus('Running', '00:02:00')
      Start-Sleep 120
      If (Test-Path "$NexusConfigFile")
      {
        Write-Host "Configuring Nexus to listen on port $NexusPort."
        (Get-Content "$NexusConfigFile") -replace "^#\s*application-port=.*$", "application-port=$NexusPort" | Set-Content "$NexusConfigFile"
        Stop-Service $servicename
      }
      else 
      {
        Write-Warning "Cannot find `"$NexusConfigFile`", skipping configuring Nexus to listen on port $NexusPort."
      }
    }
    
    $service = Start-Service $servicename -PassThru
    Write-Host "Waiting for Nexus service to be completely ready"
    $Service.WaitForStatus('Running', '00:02:00')
    
    If ($Service.Status -ine 'Running') 
    {
      Write-Warning "The Nexus Repository service ($servicename) did not start."
    }
    else 
    {
      #Even though windows reports service is ready - web url will not respond until Nexus is actually ready to serve content
      Start-Sleep 120
    }
    
    Write-Warning "`r`n"
    Write-Warning "*******************************************************************************************"
    Write-Warning "*"
    Write-Warning "*  You MAY receive the error 'localhost refused to connect.' until Nexus is fully started."
    Write-Warning "*"
    Write-Warning "*  You can manage the repository by visiting http://localhost:$NexusPort"
    Write-Warning "*  The default user is 'admin' with password 'admin123'"
    Write-Warning "*  Nexus availability is controlled via the service `"$servicename`""
    Write-Warning "*  Use the following command to open port $NexusPort for access from off this machine (one line):"
    Write-Warning "*   netsh advfirewall firewall add rule name=`"Nexus Repository`" dir=in action=allow "
    Write-Warning "*   protocol=TCP localport=$NexusPort"
    Write-Warning "*******************************************************************************************"
    
  • tools\chocolateyuninstall.ps1 Show
    $validExitCodes = @(0)
    
    $packageName= 'nexus-repository'
    $servicename = 'nexus'
    $installfolder = "$env:programdata\Nexus"
    $toolsDir   = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"
    $validExitCodes = @(0)
    
    If (Test-Path "$installfolder\bin\nexus.exe")
    {
      Stop-Service nexus -force
      Start-ChocolateyProcessAsAdmin -ExeToRun "$installfolder\bin\nexus.exe" -Statements "/uninstall $servicename" -validExitCodes $validExitCodes
      Remove-item  "$installfolder" -recurse -force
    }
    Else
    {
      Write-warning "It appears that the uninstall may have been run outside of chocolatey, skipping..."
    }
    

Virus Scan Results

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.

Dependencies

Package Maintainer(s)

Software Author(s)

  • Sonatype

Copyright

Sonatype

Tags

Release Notes

https://help.sonatype.com/display/NXRM3/2018+Release+Notes
Packaging
3.9.0.20180301
- Supports "Port" parameter for changing nexus repository listening port
3.6.0.02
- improved service startup checking
- cleaner uninstall
ATTENTION BRAKING CHANGE FOR UPGRADES FROM VERSIONS BEFORE 3.3.2.02
Nexus no longer provided a setup.exe for installing Nexus Repository 3.x on Windows.
If you previously installed with a package that used the setup.exe, you must manually uninstall it first. (you can use chocolatey uninstall if installed by chocolatey)
Once you are on 3.3.2.02 or later, upgrades will work smoothly.

Version History

Version Downloads Last updated Status
Nexus Repository OSS 3.11.0.1 234 Wednesday, May 9, 2018 approved
Nexus Repository OSS 3.9.0.20180301 179 Friday, March 23, 2018 approved
Nexus Repository OSS 3.9.0.01 159 Saturday, March 10, 2018 approved
Nexus Repository OSS 3.8.0.02 138 Thursday, February 22, 2018 approved
Nexus Repository OSS 3.7.1.02 242 Friday, December 29, 2017 approved
Nexus Repository OSS 3.6.0.02 260 Thursday, November 2, 2017 approved
Nexus Repository OSS 3.5.2.01 266 Saturday, September 23, 2017 approved
Nexus Repository OSS 3.3.2.02 414 Tuesday, June 27, 2017 approved
Nexus Repository OSS 3.0.2.02 656 Saturday, September 24, 2016 approved
Show More

Discussion for the Nexus Repository OSS Package

Ground rules:

  • This discussion is only about Nexus Repository OSS and the Nexus Repository OSS 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 Nexus Repository OSS, 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
Chocolatey.org uses cookies to enhance the user experience of the site.
Ok