Skip to content

Commit

Permalink
Updated README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
NightOwl888 committed May 16, 2017
1 parent fbd4ad5 commit aa609e3
Showing 1 changed file with 84 additions and 7 deletions.
91 changes: 84 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Apache Lucene.Net

Apache Lucene.Net is a C# full-text search engine, a C# port of the popular Apache Lucene project. Apache Lucene.Net is not a complete application, but rather a code library and API that can easily be used to add search capabilities to applications.
Apache Lucene.Net is a .NET full-text search engine, a C# port of the popular Apache Lucene project. Apache Lucene.Net is not a complete application, but rather a code library and API that can easily be used to add search capabilities to applications.

The Apache Lucene.Net web site is at:
http://lucenenet.apache.org
Expand Down Expand Up @@ -31,13 +31,13 @@ Working toward Lucene.Net 4.8.0 (currently in BETA)
PM> Install-Package Lucene.Net
```

Lucene.Net is now divided into several sub-packages. See the [complete list of Lucene.Net sub-packages on NuGet.org](https://www.nuget.org/packages?q=lucene.net)
As of 4.8.0, Lucene.Net is now divided into several NuGet sub-packages. See the [complete list of Lucene.Net sub-packages on NuGet.org](https://www.nuget.org/packages?q=lucene.net)

## Documentation

[Lucene.Net WIKI](https://cwiki.apache.org/confluence/display/LUCENENET/Lucene.Net)

We don't yet have API documentation for Lucene.Net 4.8.0 (contributions welcome), but the API is similar to [Lucene 4.8.0](https://lucene.apache.org/core/4_8_0/).
We don't yet have API documentation for Lucene.Net 4.8.0, but the API is similar to [Lucene 4.8.0](https://lucene.apache.org/core/4_8_0/).

### Legacy Versions

Expand Down Expand Up @@ -78,15 +78,63 @@ Before you start working on a pull request, please read our [Contributing](https

If you plan to submit multiple pull requests, please submit an [Individual Contributor License](https://cwiki.apache.org/confluence/display/LUCENENET/Individual+Contributor+License), or for individual pull requests, just submit the request and in the description state that the code is your original work and you license it under the [Apache License v2](http://www.apache.org/licenses/LICENSE-2.0).

## Build
## Building and Testing

To build the source, clone or download the repository. From the repository root, execute:
### Command Line

Building on the Command Line is only supported on Windows.

##### Prerequisites

1. [Powershell](https://msdn.microsoft.com/en-us/powershell/scripting/setup/installing-windows-powershell) 3.0 or higher (see [this question](http://stackoverflow.com/questions/1825585/determine-installed-powershell-version) to check your Powershell version)
2. [.NET Framework 4.5.1 Developer Pack](https://www.microsoft.com/en-us/download/details.aspx?id=40772) (Under Programs & Features, check whether you have the .NET Framework 4.5.1 SDK)

##### Execution

To build the source, clone or download and unzip the repository. From the repository root, execute:

```
> build -pv:4.8.0.1000
> build [options]
```

This will build, version, and create NuGet `.nupkg` packages in the directory `/src/release/NuGetPackages/`. You can setup Visual Studio to read these packages like any NuGet feed by following these steps:
##### Build Options

<table>
<tr>
<th>Short</th>
<th>Long</th>
<th>Description</th>
<th>Example</th>
</tr>
<tr>
<td>&#8209;config</td>
<td>&#8209;&#8209;Configuration</td>
<td>The build configuration ("Release" or "Debug").</td>
<td>build&nbsp;&#8209;&#8209;Configuration:Debug</td>
</tr>
<tr>
<td>&#8209;pv</td>
<td>&#8209;&#8209;PackageVersion</td>
<td>The NuGet package version. If not supplied, will use the version from the Version.proj file.</td>
<td>build&nbsp;&#8209;pv:4.8.0&#8209;beta00001</td>
</tr>
<tr>
<td>&#8209;t</td>
<td>&#8209;&#8209;Test</td>
<td>Runs the tests after building. Note that testing typically takes upwards of 2 hours.</td>
<td>build&nbsp;&#8209;t</td>
</tr>
<tr>
<td>&#8209;v</td>
<td>&#8209;&#8209;Version</td>
<td>The assembly file version. If not supplied, will use the PackageVersion (excluding any pre-release tag).</td>
<td>build&nbsp;&#8209;pv:4.8.0&#8209;beta00001&nbsp;&#8209;v:4.8.0</td>
</tr>
</table>

NuGet packages are output by the build to the `/release/NuGetPackages/` directory. Test results (if applicable) are output to the `/release/TestResults/` directory.

You can setup Visual Studio to read the NuGet packages like any NuGet feed by following these steps:

1. In Visual Studio, right-click the solution in Solution Explorer, and choose "Manage NuGet Packages for Solution"
2. Click the gear icon next to the Package sources dropdown.
Expand All @@ -96,3 +144,32 @@ This will build, version, and create NuGet `.nupkg` packages in the directory `/
6. Click Ok

Then all you need to do is choose the `Lucene.Net Local Packages` feed from the dropdown (in the NuGet Package Manager) and you can search for, install, and update the NuGet packages just as you can with any Internet-based feed.

### Visual Studio

#### .NET Framework

##### Prerequisites

1. Visual Studio 2012+
2. [.NET Framework 4.5.1 Developer Pack](https://www.microsoft.com/en-us/download/details.aspx?id=40772) (Under Programs & Features, check whether you have the .NET Framework 4.5.1 SDK)
3. [NUnit3 Test Adapter](https://marketplace.visualstudio.com/items?itemName=NUnitDevelopers.NUnit3TestAdapter)

##### Execution

Open `Lucene.Net.sln` to compile/test in .NET Framework 4.5.1


#### .NET Core

##### Prerequisites

1. [Visual Studio 2015 Update 3](http://stackoverflow.com/a/40068343) (NOTE: Other Visual Studio versions, including 2017 are not supported)
2. [1.1 with SDK Preview 2.1 build 3177](https://github.com/dotnet/core/blob/master/release-notes/download-archive.md)
3. [NUnit3 Test Adapter](https://marketplace.visualstudio.com/items?itemName=NUnitDevelopers.NUnit3TestAdapter)

##### Execution

Open `Lucene.Net.Portable.sln` to compile under .NET Standard and test under .NET Core

> NOTE: You may need to run `dotnet restore` from the command line prior to opening the solution in order to successfully compile.

0 comments on commit aa609e3

Please sign in to comment.