diff --git a/appveyor.yml b/appveyor.yml
new file mode 100644
index 0000000000..caf7209ed4
--- /dev/null
+++ b/appveyor.yml
@@ -0,0 +1,24 @@
+version: '1.0.0-SNAPSHOT-{build}'
+os: Windows Server 2012
+environment:
+  JAVA_HOME: C:\Program Files\Java\jdk1.8.0
+install:
+  - ps: |
+      Add-Type -AssemblyName System.IO.Compression.FileSystem
+      if (!(Test-Path -Path "C:\maven" )) {
+        (new-object System.Net.WebClient).DownloadFile(
+          'http://www.us.apache.org/dist/maven/maven-3/3.1.1/binaries/apache-maven-3.1.1-bin.zip',
+          'C:\maven-bin.zip'
+        )
+        [System.IO.Compression.ZipFile]::ExtractToDirectory("C:\maven-bin.zip", "C:\maven")
+      }
+  - cmd: SET PATH=C:\maven\apache-maven-3.1.1\bin;%JAVA_HOME%\bin;%PATH%
+  - cmd: SET MAVEN_OPTS=-XX:MaxPermSize=2g -Xmx4g
+  - cmd: SET JAVA_OPTS=-XX:MaxPermSize=2g -Xmx4g
+build_script:
+  - mvn clean package --batch-mode -DskipTests
+test_script:
+  - mvn clean install --batch-mode -Pcontrib-check
+cache:
+  - C:\maven\
+  - C:\Users\appveyor\.m2
diff --git a/pom.xml b/pom.xml
index aca6b023aa..3beea1d510 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1548,6 +1548,7 @@ language governing permissions and limitations under the License. -->
                         <exclude>nbactions.xml</exclude> <!-- courtesy excludes for netbeans users -->
                         <exclude>DEPENDENCIES</exclude> <!-- auto generated file by apache's maven config while building sources.zip -->
                         <exclude>.travis.yml</exclude> <!-- Travis CI Build Descriptor File -->
+                        <exclude>appveyor.yml</exclude> <!-- AppVeyor CI Build Descriptor File -->
                     </excludes>
                 </configuration>
                 <dependencies>