diff --git a/Procfile b/Procfile
new file mode 100644
index 000000000000..4afeb7900918
--- /dev/null
+++ b/Procfile
@@ -0,0 +1 @@
+web: java $JAVA_OPTS -Dspring.profiles.active="datajpa,heroku" -DTOPJAVA_ROOT="." -jar target/dependency/webapp-runner.jar --port $PORT target/*.war
\ No newline at end of file
diff --git a/hr.bat b/hr.bat
new file mode 100644
index 000000000000..a7d83b14d89b
--- /dev/null
+++ b/hr.bat
@@ -0,0 +1,2 @@
+call mvn -B -s settings.xml -DskipTests=true clean package
+call java -Dspring.profiles.active="datajpa,heroku" -DDATABASE_URL="postgres://user:password@localhost:5432/topjava" -jar target/dependency/webapp-runner.jar target/*.war
diff --git a/pom.xml b/pom.xml
index 05f7ba193502..9a01bbe5de2c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -20,7 +20,7 @@
5.1.5.RELEASE
2.1.9.RELEASE
2.9.8
- 9.0.21
+ 9.0.22
1.2.3
@@ -395,6 +395,50 @@
true
+
+ heroku
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+ 3.1.1
+
+
+ package
+
+ copy
+
+
+
+
+
+ com.github.jsimone
+ webapp-runner-main
+ 9.0.22.0
+ webapp-runner.jar
+
+
+
+
+
+
+
+
+
+
+ org.postgresql
+ postgresql
+ ${postgresql.version}
+
+
+ org.apache.tomcat
+ tomcat-jdbc
+ ${tomcat.version}
+
+
+
diff --git a/settings.xml b/settings.xml
new file mode 100644
index 000000000000..9681d723272c
--- /dev/null
+++ b/settings.xml
@@ -0,0 +1,9 @@
+
+
+
+
+ heroku
+
+
diff --git a/src/main/resources/db/heroku.properties b/src/main/resources/db/heroku.properties
new file mode 100644
index 000000000000..c8146ba6f139
--- /dev/null
+++ b/src/main/resources/db/heroku.properties
@@ -0,0 +1,5 @@
+jpa.showSql=false
+hibernate.format_sql=false
+hibernate.use_sql_comments=false
+database.init=false
+jdbc.initLocation=initDB.sql
\ No newline at end of file
diff --git a/src/main/resources/spring/spring-db.xml b/src/main/resources/spring/spring-db.xml
index 4789c303f66d..6a9c1aae9006 100644
--- a/src/main/resources/spring/spring-db.xml
+++ b/src/main/resources/spring/spring-db.xml
@@ -34,7 +34,7 @@
p:password="${database.password}"/>
-
+