Unsure pomless perform still works
diff --git a/maven-release-plugin/pom.xml b/maven-release-plugin/pom.xml
index 091699c..a5fc519 100644
--- a/maven-release-plugin/pom.xml
+++ b/maven-release-plugin/pom.xml
@@ -261,7 +261,7 @@
                 <id>integration-test-perform</id>
                 <configuration>
                   <pomIncludes>
-                    <pomInclude>projects/perform/*/pom.xml</pomInclude>
+                    <pomInclude>projects/perform/*</pomInclude>
                   </pomIncludes>
                   <goals>
                     <goal>clean</goal>
diff --git a/maven-release-plugin/src/it/projects/perform/pomless/invoker.properties b/maven-release-plugin/src/it/projects/perform/pomless/invoker.properties
new file mode 100644
index 0000000..6e18bfa
--- /dev/null
+++ b/maven-release-plugin/src/it/projects/perform/pomless/invoker.properties
@@ -0,0 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+# 
+#   http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+#Require at least Maven3, so we can verify the release.properties
+invoker.goals = ${project.groupId}:${project.artifactId}:${project.version}:perform
\ No newline at end of file
diff --git a/maven-release-plugin/src/it/projects/perform/pomless/test.properties b/maven-release-plugin/src/it/projects/perform/pomless/test.properties
new file mode 100644
index 0000000..8ab8dfc
--- /dev/null
+++ b/maven-release-plugin/src/it/projects/perform/pomless/test.properties
@@ -0,0 +1,17 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+# 
+#   http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+connectionUrl = "scm:dummy|nul"
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractReleaseMojo.java
index 66c8c7c..fd84900 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/AbstractReleaseMojo.java
@@ -20,7 +20,6 @@
  */
 
 import java.io.File;
-import java.io.IOException;
 import java.nio.file.Path;
 import java.util.Iterator;
 import java.util.List;
@@ -159,14 +158,14 @@
         descriptor.setInteractive( settings.isInteractiveMode() );
 
         Path workingDirectory;
-        try
+        if ( reactorProjects == null || reactorProjects.size() <= 1 )
+        {
+            workingDirectory = basedir.toPath();
+        }
+        else
         {
             workingDirectory = getCommonBasedir( reactorProjects );
         }
-        catch ( IOException e )
-        {
-            throw new RuntimeException( e.getMessage() );
-        }
         descriptor.setWorkingDirectory( workingDirectory.toFile().getAbsolutePath() );
 
         Path rootBasedir = basedir.toPath();
@@ -183,8 +182,12 @@
         {
             String versionlessKey = ArtifactUtils.versionlessKey( project.getGroupId(), project.getArtifactId() );
             descriptor.putOriginalVersion( versionlessKey, project.getVersion() );
-            descriptor.addProjectPomFile( versionlessKey,
-                                          workingDirectory.relativize( project.getFile().toPath() ).toString() );
+            
+            if ( project.getFile() != null )
+            {
+                descriptor.addProjectPomFile( versionlessKey,
+                                              workingDirectory.relativize( project.getFile().toPath() ).toString() );
+            }
         }
 
         List<String> profileIds = session.getRequest().getActiveProfiles();
@@ -305,9 +308,11 @@
     }
     
     static Path getCommonBasedir( List<MavenProject> reactorProjects )
-                    throws IOException
     {
-        Path basePath = reactorProjects.get( 0 ).getBasedir().toPath();
+        Path basePath = reactorProjects
+                        .get( 0 )
+                        .getBasedir()
+                        .toPath();
         
         for ( MavenProject reactorProject : reactorProjects )
         {