diff --git a/apollo-adminservice/pom.xml b/apollo-adminservice/pom.xml
index b6d24f9a3149283e82183aaeeff32ffc6655c42b..c14a1164e3fc252ba1c1cecaf21db023c97f37b1 100644
--- a/apollo-adminservice/pom.xml
+++ b/apollo-adminservice/pom.xml
@@ -72,4 +72,33 @@
test
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+ true
+
+
+
+ maven-assembly-plugin
+
+
+ package
+
+ single
+
+
+ ${project.artifactId}-${project.version}-${package.environment}
+ false
+
+ src/assembly/assembly-descriptor.xml
+
+
+
+
+
+
+
diff --git a/apollo-adminservice/src/assembly/assembly-descriptor.xml b/apollo-adminservice/src/assembly/assembly-descriptor.xml
new file mode 100644
index 0000000000000000000000000000000000000000..887d5a6d91afabe9df23e94a04a1df3ffd1e3d3f
--- /dev/null
+++ b/apollo-adminservice/src/assembly/assembly-descriptor.xml
@@ -0,0 +1,47 @@
+
+ apollo-assembly
+
+ zip
+
+ false
+
+
+
+ src/main/scripts
+ scripts
+
+ *.sh
+
+ 0755
+ unix
+
+
+ src/main/config
+ config
+
+ apollo-adminservice.conf
+
+ unix
+
+
+ src/main/config
+ /
+
+ apollo-adminservice.conf
+
+ unix
+
+
+
+ target
+ /
+
+ ${project.artifactId}-*.jar
+
+ 0755
+
+
+
diff --git a/apollo-adminservice/src/main/config/apollo-adminservice.conf b/apollo-adminservice/src/main/config/apollo-adminservice.conf
new file mode 100644
index 0000000000000000000000000000000000000000..098371a158219608001f7c396d43a043b09fd03f
--- /dev/null
+++ b/apollo-adminservice/src/main/config/apollo-adminservice.conf
@@ -0,0 +1,3 @@
+MODE=service
+PID_FOLDER=.
+LOG_FOLDER=/opt/logs/100003172/
\ No newline at end of file
diff --git a/apollo-adminservice/src/main/config/app.properties b/apollo-adminservice/src/main/config/app.properties
new file mode 100644
index 0000000000000000000000000000000000000000..92ff3e21f6c8fb8d28108264349132232ea76072
--- /dev/null
+++ b/apollo-adminservice/src/main/config/app.properties
@@ -0,0 +1,2 @@
+appId=100003172
+jdkVersion=1.8
\ No newline at end of file
diff --git a/apollo-adminservice/src/main/scripts/shutdown.sh b/apollo-adminservice/src/main/scripts/shutdown.sh
new file mode 100644
index 0000000000000000000000000000000000000000..5ce93aa33a084c4aa0a32264d87eea6bac89b075
--- /dev/null
+++ b/apollo-adminservice/src/main/scripts/shutdown.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+SERVICE_NAME=apollo-adminservice
+
+if [[ -z "$JAVA_HOME" && -d /usr/java/latest/ ]]; then
+ export JAVA_HOME=/usr/java/latest/
+fi
+
+cd `dirname $0`/..
+
+if [[ ! -f $SERVICE_NAME".jar" && -d current ]]; then
+ cd current
+fi
+
+if [[ -f $SERVICE_NAME".jar" ]]; then
+ chmod a+x $SERVICE_NAME".jar"
+ ./$SERVICE_NAME".jar" stop
+fi
diff --git a/apollo-adminservice/src/main/scripts/startup.sh b/apollo-adminservice/src/main/scripts/startup.sh
new file mode 100644
index 0000000000000000000000000000000000000000..f75693ca7d87a5e92d80b1f57ee5e19288c2035b
--- /dev/null
+++ b/apollo-adminservice/src/main/scripts/startup.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+SERVICE_NAME=apollo-adminservice
+VERSION=0.0.1-SNAPSHOT
+PATH_TO_JAR=$SERVICE_NAME"-"$VERSION".jar"
+
+export JAVA_OPTS="-server -Xms4096m -Xmx4096m -Xss256k -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=384m -XX:NewSize=1536m -XX:MaxNewSize=1536m -XX:SurvivorRatio=22 -XX:+UseParNewGC -XX:ParallelGCThreads=4 -XX:MaxTenuringThreshold=9 -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC -XX:+UseCMSInitiatingOccupancyOnly -XX:+ScavengeBeforeFullGC -XX:+UseCMSCompactAtFullCollection -XX:+CMSParallelRemarkEnabled -XX:CMSFullGCsBeforeCompaction=9 -XX:CMSInitiatingOccupancyFraction=60 -XX:+CMSClassUnloadingEnabled -XX:SoftRefLRUPolicyMSPerMB=0 -XX:-ReduceInitialCardMarks -XX:+CMSPermGenSweepingEnabled -XX:CMSInitiatingPermOccupancyFraction=70 -XX:+ExplicitGCInvokesConcurrent -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationConcurrentTime -XX:+PrintHeapAtGC -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Duser.timezone=Asia/Shanghai -Dclient.encoding.override=UTF-8 -Dfile.encoding=UTF-8"
+export JAVA_OPTS="$JAVA_OPTS -Xloggc:/opt/logs/100003172/heap_trace.txt -XX:HeapDumpPath=/opt/logs/100003172/HeapDumpOnOutOfMemoryError/"
+
+if [[ -z "$JAVA_HOME" && -d /usr/java/latest/ ]]; then
+ export JAVA_HOME=/usr/java/latest/
+fi
+
+cd `dirname $0`/..
+
+if [[ ! -f PATH_TO_JAR && -d current ]]; then
+ cd current
+fi
+
+if [[ -f $SERVICE_NAME".jar" ]]; then
+ rm -rf $SERVICE_NAME".jar"
+fi
+
+ln $PATH_TO_JAR $SERVICE_NAME".jar"
+chmod a+x $SERVICE_NAME".jar"
+./$SERVICE_NAME".jar" start
+
+exit 0;
diff --git a/apollo-assembly/pom.xml b/apollo-assembly/pom.xml
index 0220812646c3d5f469dccf9b7a00641b82a12f87..1775adb22e364cc720b94987127fb24be8352cfc 100644
--- a/apollo-assembly/pom.xml
+++ b/apollo-assembly/pom.xml
@@ -33,110 +33,4 @@
test
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
- true
-
-
-
- maven-assembly-plugin
-
-
- package
-
- single
-
-
- ${project.artifactId}-${project.version}-${package.environment}
- false
-
- src/assembly/assembly-descriptor.xml
-
-
-
-
-
-
-
-
-
- configservice
-
-
-
- maven-assembly-plugin
-
-
- package
-
- single
-
-
- ${project.artifactId}-${project.version}-${package.environment}
- false
-
- src/assembly/configservice/assembly-descriptor.xml
-
-
-
-
-
-
-
-
-
- adminservice
-
-
-
- maven-assembly-plugin
-
-
- package
-
- single
-
-
- ${project.artifactId}-${project.version}-${package.environment}
- false
-
- src/assembly/adminservice/assembly-descriptor.xml
-
-
-
-
-
-
-
-
-
- portal
-
-
-
- maven-assembly-plugin
-
-
- package
-
- single
-
-
- ${project.artifactId}-${project.version}-${package.environment}
- false
-
- src/assembly/portal/assembly-descriptor.xml
-
-
-
-
-
-
-
-
-
diff --git a/apollo-biz/src/main/java/com/ctrip/apollo/biz/service/AppNamespaceService.java b/apollo-biz/src/main/java/com/ctrip/apollo/biz/service/AppNamespaceService.java
index a747e6ec7afc5064e74a0c17180efc253d9ed7cb..f04e1e1ef5805937051015ca01f5e3fe856db484 100644
--- a/apollo-biz/src/main/java/com/ctrip/apollo/biz/service/AppNamespaceService.java
+++ b/apollo-biz/src/main/java/com/ctrip/apollo/biz/service/AppNamespaceService.java
@@ -6,8 +6,6 @@ import java.util.List;
import java.util.Objects;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
diff --git a/apollo-configservice/pom.xml b/apollo-configservice/pom.xml
index 8627c6dc8aa02d9a7c903dde94b65dea886ec4b0..e73528bd139e8afc33ce017d07de1bf16d1803a4 100644
--- a/apollo-configservice/pom.xml
+++ b/apollo-configservice/pom.xml
@@ -73,4 +73,33 @@
test
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+ true
+
+
+
+ maven-assembly-plugin
+
+
+ package
+
+ single
+
+
+ ${project.artifactId}-${project.version}-${package.environment}
+ false
+
+ src/assembly/assembly-descriptor.xml
+
+
+
+
+
+
+
diff --git a/apollo-configservice/src/assembly/assembly-descriptor.xml b/apollo-configservice/src/assembly/assembly-descriptor.xml
new file mode 100644
index 0000000000000000000000000000000000000000..06766d2479358d6b0ced1f2887433b3378067afc
--- /dev/null
+++ b/apollo-configservice/src/assembly/assembly-descriptor.xml
@@ -0,0 +1,47 @@
+
+ apollo-assembly
+
+ zip
+
+ false
+
+
+
+ src/main/scripts
+ scripts
+
+ *.sh
+
+ 0755
+ unix
+
+
+ src/main/config
+ config
+
+ apollo-configservice.conf
+
+ unix
+
+
+ src/main/config
+ /
+
+ apollo-configservice.conf
+
+ unix
+
+
+
+ target
+ /
+
+ ${project.artifactId}-*.jar
+
+ 0755
+
+
+
diff --git a/apollo-configservice/src/main/config/apollo-configservice.conf b/apollo-configservice/src/main/config/apollo-configservice.conf
new file mode 100644
index 0000000000000000000000000000000000000000..127c1a3ff4718dd00b257367cdd6971b8172087a
--- /dev/null
+++ b/apollo-configservice/src/main/config/apollo-configservice.conf
@@ -0,0 +1,3 @@
+MODE=service
+PID_FOLDER=.
+LOG_FOLDER=/opt/logs/100003171/
\ No newline at end of file
diff --git a/apollo-configservice/src/main/config/app.properties b/apollo-configservice/src/main/config/app.properties
new file mode 100644
index 0000000000000000000000000000000000000000..5cbbf0a16c6772f1867e6b2587e032ee79db195d
--- /dev/null
+++ b/apollo-configservice/src/main/config/app.properties
@@ -0,0 +1,2 @@
+appId=100003171
+jdkVersion=1.8
\ No newline at end of file
diff --git a/apollo-configservice/src/main/java/com/ctrip/apollo/configservice/ConfigServiceApplication.java b/apollo-configservice/src/main/java/com/ctrip/apollo/configservice/ConfigServiceApplication.java
index c2e5f5c89bc76d5ccd8f22c9a1c88e7b86dc4d6b..8276417182d31a4ae2c6125a3ac77f8bc7b17d00 100644
--- a/apollo-configservice/src/main/java/com/ctrip/apollo/configservice/ConfigServiceApplication.java
+++ b/apollo-configservice/src/main/java/com/ctrip/apollo/configservice/ConfigServiceApplication.java
@@ -6,9 +6,9 @@ import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
import org.springframework.context.ConfigurableApplicationContext;
-import org.springframework.context.annotation.EnableAspectJAutoProxy;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.EnableAspectJAutoProxy;
import org.springframework.context.annotation.PropertySource;
import org.springframework.transaction.annotation.EnableTransactionManagement;
diff --git a/apollo-configservice/src/main/scripts/shutdown.sh b/apollo-configservice/src/main/scripts/shutdown.sh
new file mode 100644
index 0000000000000000000000000000000000000000..5a7ea4877bbf9f552d31d9fa1134d0556ed78d17
--- /dev/null
+++ b/apollo-configservice/src/main/scripts/shutdown.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+SERVICE_NAME=apollo-configservice
+
+if [[ -z "$JAVA_HOME" && -d /usr/java/latest/ ]]; then
+ export JAVA_HOME=/usr/java/latest/
+fi
+
+cd `dirname $0`/..
+
+if [[ ! -f $SERVICE_NAME".jar" && -d current ]]; then
+ cd current
+fi
+
+if [[ -f $SERVICE_NAME".jar" ]]; then
+ chmod a+x $SERVICE_NAME".jar"
+ ./$SERVICE_NAME".jar" stop
+fi
diff --git a/apollo-configservice/src/main/scripts/startup.sh b/apollo-configservice/src/main/scripts/startup.sh
new file mode 100644
index 0000000000000000000000000000000000000000..6e3d79187573dcc11376ae92934391a14d40178c
--- /dev/null
+++ b/apollo-configservice/src/main/scripts/startup.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+SERVICE_NAME=apollo-configservice
+VERSION=0.0.1-SNAPSHOT
+PATH_TO_JAR=$SERVICE_NAME"-"$VERSION".jar"
+
+export JAVA_OPTS="-server -Xms4096m -Xmx4096m -Xss256k -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=384m -XX:NewSize=1536m -XX:MaxNewSize=1536m -XX:SurvivorRatio=22 -XX:+UseParNewGC -XX:ParallelGCThreads=4 -XX:MaxTenuringThreshold=9 -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC -XX:+UseCMSInitiatingOccupancyOnly -XX:+ScavengeBeforeFullGC -XX:+UseCMSCompactAtFullCollection -XX:+CMSParallelRemarkEnabled -XX:CMSFullGCsBeforeCompaction=9 -XX:CMSInitiatingOccupancyFraction=60 -XX:+CMSClassUnloadingEnabled -XX:SoftRefLRUPolicyMSPerMB=0 -XX:-ReduceInitialCardMarks -XX:+CMSPermGenSweepingEnabled -XX:CMSInitiatingPermOccupancyFraction=70 -XX:+ExplicitGCInvokesConcurrent -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationConcurrentTime -XX:+PrintHeapAtGC -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Duser.timezone=Asia/Shanghai -Dclient.encoding.override=UTF-8 -Dfile.encoding=UTF-8"
+export JAVA_OPTS="$JAVA_OPTS -Xloggc:/opt/logs/100003171/heap_trace.txt -XX:HeapDumpPath=/opt/logs/100003171/HeapDumpOnOutOfMemoryError/"
+
+if [[ -z "$JAVA_HOME" && -d /usr/java/latest/ ]]; then
+ export JAVA_HOME=/usr/java/latest/
+fi
+
+cd `dirname $0`/..
+
+if [[ ! -f PATH_TO_JAR && -d current ]]; then
+ cd current
+fi
+
+if [[ -f $SERVICE_NAME".jar" ]]; then
+ rm -rf $SERVICE_NAME".jar"
+fi
+
+ln $PATH_TO_JAR $SERVICE_NAME".jar"
+chmod a+x $SERVICE_NAME".jar"
+./$SERVICE_NAME".jar" start
+
+exit 0;
diff --git a/apollo-configservice/src/test/java/com/ctrip/apollo/configservice/controller/NotificationControllerTest.java b/apollo-configservice/src/test/java/com/ctrip/apollo/configservice/controller/NotificationControllerTest.java
index 1b2f1f33c65bb487aff3be982d429d381777b681..da651cccfe16f2ad84456d4d58f8b00aea2ab5db 100644
--- a/apollo-configservice/src/test/java/com/ctrip/apollo/configservice/controller/NotificationControllerTest.java
+++ b/apollo-configservice/src/test/java/com/ctrip/apollo/configservice/controller/NotificationControllerTest.java
@@ -16,7 +16,6 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.test.util.ReflectionTestUtils;
diff --git a/apollo-portal/pom.xml b/apollo-portal/pom.xml
index 4175b8700efbf5b25253c503f5f9e12ffc95a193..1c6c772415371e1b49eaf6616cd2e1c255740e74 100644
--- a/apollo-portal/pom.xml
+++ b/apollo-portal/pom.xml
@@ -24,4 +24,33 @@
test
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+ true
+
+
+
+ maven-assembly-plugin
+
+
+ package
+
+ single
+
+
+ ${project.artifactId}-${project.version}-${package.environment}
+ false
+
+ src/assembly/assembly-descriptor.xml
+
+
+
+
+
+
+
diff --git a/apollo-portal/src/assembly/assembly-descriptor.xml b/apollo-portal/src/assembly/assembly-descriptor.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b9346d18c552ce67ace5b3b7141bd2cd0ef9c658
--- /dev/null
+++ b/apollo-portal/src/assembly/assembly-descriptor.xml
@@ -0,0 +1,47 @@
+
+ apollo-assembly
+
+ zip
+
+ false
+
+
+
+ src/main/scripts
+ scripts
+
+ *.sh
+
+ 0755
+ unix
+
+
+ src/main/config
+ config
+
+ apollo-portal.conf
+
+ unix
+
+
+ src/main/config
+ /
+
+ apollo-portal.conf
+
+ unix
+
+
+
+ target
+ /
+
+ ${project.artifactId}-*.jar
+
+ 0755
+
+
+
diff --git a/apollo-portal/src/main/config/apollo-portal.conf b/apollo-portal/src/main/config/apollo-portal.conf
new file mode 100644
index 0000000000000000000000000000000000000000..05067c451aef1c40766120affb579c0b2622513c
--- /dev/null
+++ b/apollo-portal/src/main/config/apollo-portal.conf
@@ -0,0 +1,3 @@
+MODE=service
+PID_FOLDER=.
+LOG_FOLDER=/opt/logs/100003173/
\ No newline at end of file
diff --git a/apollo-portal/src/main/config/app.properties b/apollo-portal/src/main/config/app.properties
new file mode 100644
index 0000000000000000000000000000000000000000..2db6b2c4488103d6d5c3163ae6c2bb9a8198b6a4
--- /dev/null
+++ b/apollo-portal/src/main/config/app.properties
@@ -0,0 +1,2 @@
+appId=100003173
+jdkVersion=1.8
\ No newline at end of file
diff --git a/apollo-portal/src/main/java/com/ctrip/apollo/portal/service/PortalConfigService.java b/apollo-portal/src/main/java/com/ctrip/apollo/portal/service/PortalConfigService.java
index de37131f244320543f2d465fc006fd6260e0f32b..c4f365577961a4facdc7839d02bf876d80a8572b 100644
--- a/apollo-portal/src/main/java/com/ctrip/apollo/portal/service/PortalConfigService.java
+++ b/apollo-portal/src/main/java/com/ctrip/apollo/portal/service/PortalConfigService.java
@@ -1,40 +1,32 @@
package com.ctrip.apollo.portal.service;
-import com.google.gson.Gson;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.web.client.HttpClientErrorException;
import com.ctrip.apollo.common.utils.BeanUtils;
-import com.ctrip.apollo.common.utils.ExceptionUtils;
-import com.ctrip.apollo.core.enums.Env;
import com.ctrip.apollo.core.dto.ItemChangeSets;
import com.ctrip.apollo.core.dto.ItemDTO;
import com.ctrip.apollo.core.dto.NamespaceDTO;
import com.ctrip.apollo.core.dto.ReleaseDTO;
+import com.ctrip.apollo.core.enums.Env;
import com.ctrip.apollo.core.exception.BadRequestException;
import com.ctrip.apollo.core.exception.NotFoundException;
import com.ctrip.apollo.core.exception.ServiceException;
-import com.ctrip.apollo.core.utils.StringUtils;
import com.ctrip.apollo.portal.api.AdminServiceAPI;
import com.ctrip.apollo.portal.entity.ItemDiffs;
import com.ctrip.apollo.portal.entity.NamespaceIdentifer;
-import com.ctrip.apollo.portal.entity.form.NamespaceTextModel;
-import com.ctrip.apollo.portal.entity.NamespaceVO;
import com.ctrip.apollo.portal.entity.form.NamespaceReleaseModel;
+import com.ctrip.apollo.portal.entity.form.NamespaceTextModel;
import com.ctrip.apollo.portal.service.txtresolver.ConfigTextResolver;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-
@Service
public class PortalConfigService {
diff --git a/apollo-portal/src/main/scripts/shutdown.sh b/apollo-portal/src/main/scripts/shutdown.sh
new file mode 100644
index 0000000000000000000000000000000000000000..4466fa0f290feefc2ba610b68756c7fa9d0159bf
--- /dev/null
+++ b/apollo-portal/src/main/scripts/shutdown.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+SERVICE_NAME=apollo-portal
+
+if [[ -z "$JAVA_HOME" && -d /usr/java/latest/ ]]; then
+ export JAVA_HOME=/usr/java/latest/
+fi
+
+cd `dirname $0`/..
+
+if [[ ! -f $SERVICE_NAME".jar" && -d current ]]; then
+ cd current
+fi
+
+if [[ -f $SERVICE_NAME".jar" ]]; then
+ chmod a+x $SERVICE_NAME".jar"
+ ./$SERVICE_NAME".jar" stop
+fi
diff --git a/apollo-portal/src/main/scripts/startup.sh b/apollo-portal/src/main/scripts/startup.sh
new file mode 100644
index 0000000000000000000000000000000000000000..dccffb2786cadeeca2f0625549c6e80d1351134c
--- /dev/null
+++ b/apollo-portal/src/main/scripts/startup.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+SERVICE_NAME=apollo-portal
+VERSION=0.0.1-SNAPSHOT
+PATH_TO_JAR=$SERVICE_NAME"-"$VERSION".jar"
+
+export JAVA_OPTS="-server -Xms4096m -Xmx4096m -Xss256k -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=384m -XX:NewSize=1536m -XX:MaxNewSize=1536m -XX:SurvivorRatio=22 -XX:+UseParNewGC -XX:ParallelGCThreads=4 -XX:MaxTenuringThreshold=9 -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC -XX:+UseCMSInitiatingOccupancyOnly -XX:+ScavengeBeforeFullGC -XX:+UseCMSCompactAtFullCollection -XX:+CMSParallelRemarkEnabled -XX:CMSFullGCsBeforeCompaction=9 -XX:CMSInitiatingOccupancyFraction=60 -XX:+CMSClassUnloadingEnabled -XX:SoftRefLRUPolicyMSPerMB=0 -XX:-ReduceInitialCardMarks -XX:+CMSPermGenSweepingEnabled -XX:CMSInitiatingPermOccupancyFraction=70 -XX:+ExplicitGCInvokesConcurrent -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationConcurrentTime -XX:+PrintHeapAtGC -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Duser.timezone=Asia/Shanghai -Dclient.encoding.override=UTF-8 -Dfile.encoding=UTF-8"
+export JAVA_OPTS="$JAVA_OPTS -Xloggc:/opt/logs/100003173/heap_trace.txt -XX:HeapDumpPath=/opt/logs/100003173/HeapDumpOnOutOfMemoryError/"
+
+if [[ -z "$JAVA_HOME" && -d /usr/java/latest/ ]]; then
+ export JAVA_HOME=/usr/java/latest/
+fi
+
+cd `dirname $0`/..
+
+if [[ ! -f PATH_TO_JAR && -d current ]]; then
+ cd current
+fi
+
+if [[ -f $SERVICE_NAME".jar" ]]; then
+ rm -rf $SERVICE_NAME".jar"
+fi
+
+ln $PATH_TO_JAR $SERVICE_NAME".jar"
+chmod a+x $SERVICE_NAME".jar"
+./$SERVICE_NAME".jar" start
+
+exit 0;