diff --git a/.gitignore b/.gitignore
index 2638c1de080d1527b33ce3ad8b403d19cb83ed1c..a5f4d3e90086cbd606d62d971fa802badf8716a5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,5 @@
 /private-rows-extensions/target/
 /private-rows-extensions/nb-configuration.xml
 /war/*.war
+/private-rows-extension/nbproject/
+/private-rows-extension/target/
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3fb433adc140f265de454a97a9d46b71948d76ac..101f5328bd1683fab862067f8ffa438ee17fd3df 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -18,9 +18,9 @@ build_extension_build_env:
     refs:
       - master
     changes:
-      - private-rows-extensions/Dockerfile-build-env
+      - private-rows-extension/Dockerfile-build-env
   script:
-    - cd private-rows-extensions
+    - cd private-rows-extension
     - docker login -u "${CI_REGISTRY_USER}" -p "${CI_REGISTRY_PASSWORD}" "${CI_REGISTRY}"
     - docker build -t "${CI_REGISTRY_IMAGE}/extension_build_env" . -f Dockerfile-build-env
     - docker push "${CI_REGISTRY_IMAGE}/extension_build_env"
@@ -64,11 +64,11 @@ build_extension:
   script:
     - cd vollt
     - gradle jar
-    - cd ../private-rows-extensions
+    - cd ../private-rows-extension
     - mvn clean package
   artifacts:
     paths:
-      - private-rows-extensions/target/private-rows-extensions-*.jar
+      - private-rows-extension/target/private-rows-extension-*.jar
     expire_in: 7 days
 
 build_war:
diff --git a/private-rows-extensions/Dockerfile-build-env b/private-rows-extension/Dockerfile-build-env
similarity index 100%
rename from private-rows-extensions/Dockerfile-build-env
rename to private-rows-extension/Dockerfile-build-env
diff --git a/private-rows-extension/nb-configuration.xml b/private-rows-extension/nb-configuration.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a65c4514a3d97bc9851e99794ec52135faa6fef5
--- /dev/null
+++ b/private-rows-extension/nb-configuration.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project-shared-configuration>
+    <!--
+This file contains additional configuration written by modules in the NetBeans IDE.
+The configuration is intended to be shared among all the users of project and
+therefore it is assumed to be part of version control checkout.
+Without this configuration present, some functionality in the IDE may be limited or fail altogether.
+-->
+    <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1">
+        <!--
+Properties that influence various parts of the IDE, especially code formatting and the like. 
+You can copy and paste the single properties, into the pom.xml file and the IDE will pick them up.
+That way multiple projects can share the same settings (useful for formatting rules for example).
+Any value defined here will override the pom.xml file value but is only applicable to the current project.
+-->
+        <netbeans.hint.jdkPlatform>JDK_1.8</netbeans.hint.jdkPlatform>
+    </properties>
+</project-shared-configuration>
diff --git a/private-rows-extensions/pom.xml b/private-rows-extension/pom.xml
similarity index 97%
rename from private-rows-extensions/pom.xml
rename to private-rows-extension/pom.xml
index e478a51bab5f7d878af9f904c8fe9c1cbf06f880..2003e6bea9d7d10be585363624304e7c0c2a4983 100644
--- a/private-rows-extensions/pom.xml
+++ b/private-rows-extension/pom.xml
@@ -2,7 +2,7 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <groupId>it.inaf.ia2</groupId>
-    <artifactId>private-rows-extensions</artifactId>
+    <artifactId>private-rows-extension</artifactId>
     <version>1.0-SNAPSHOT</version>
     <packaging>jar</packaging>
     <properties>
diff --git a/private-rows-extensions/src/main/java/it/inaf/ia2/vollt/CustomJobOwner.java b/private-rows-extension/src/main/java/it/inaf/ia2/vollt/CustomJobOwner.java
similarity index 100%
rename from private-rows-extensions/src/main/java/it/inaf/ia2/vollt/CustomJobOwner.java
rename to private-rows-extension/src/main/java/it/inaf/ia2/vollt/CustomJobOwner.java
diff --git a/private-rows-extensions/src/main/java/it/inaf/ia2/vollt/CustomUserIdentifier.java b/private-rows-extension/src/main/java/it/inaf/ia2/vollt/CustomUserIdentifier.java
similarity index 100%
rename from private-rows-extensions/src/main/java/it/inaf/ia2/vollt/CustomUserIdentifier.java
rename to private-rows-extension/src/main/java/it/inaf/ia2/vollt/CustomUserIdentifier.java
diff --git a/private-rows-extensions/src/main/java/it/inaf/ia2/vollt/PrivateRowsQueryExecutor.java b/private-rows-extension/src/main/java/it/inaf/ia2/vollt/PrivateRowsQueryExecutor.java
similarity index 100%
rename from private-rows-extensions/src/main/java/it/inaf/ia2/vollt/PrivateRowsQueryExecutor.java
rename to private-rows-extension/src/main/java/it/inaf/ia2/vollt/PrivateRowsQueryExecutor.java
diff --git a/private-rows-extensions/src/test/java/it/inaf/ia2/vollt/PrivateRowsQueryExecutorTest.java b/private-rows-extension/src/test/java/it/inaf/ia2/vollt/PrivateRowsQueryExecutorTest.java
similarity index 100%
rename from private-rows-extensions/src/test/java/it/inaf/ia2/vollt/PrivateRowsQueryExecutorTest.java
rename to private-rows-extension/src/test/java/it/inaf/ia2/vollt/PrivateRowsQueryExecutorTest.java
diff --git a/war/fill-war.sh b/war/fill-war.sh
index d5c26569cf236d6cad8530e454358c0fd5570025..2c8b0480fa07da38613bac3394d8ca6a07a0ac04 100755
--- a/war/fill-war.sh
+++ b/war/fill-war.sh
@@ -6,7 +6,7 @@ rm tap.war
 unzip "$base_war" -d vollt
 cp tap.properties vollt/WEB-INF/classes/tap.properties
 cp web.xml vollt/WEB-INF/
-cp ../private-rows-extensions/target/private-rows-extensions-*.jar vollt/WEB-INF/lib/
+cp ../private-rows-extension/target/private-rows-extension-*.jar vollt/WEB-INF/lib/
 cd vollt
 zip -r -u ../tap.war *
 cd ..