2011-08-04 14 views
0

を通じて、私はこのようになりますGlassfishのドメイン作成配列を含む小さなファイル、書いていない:一括作成は、コマンドラインでの作業が、execのMavenプラグイン

create-domain --adminPort 4848 --instancePort 8080 pouet 
start-domain pouet 
create-jdbc-connection-pool --datasourceclassname=org.apache.derby.jdbc.ClientDataSource --restype=javax.sql.ConnectionPoolDataSource --validationmethod=meta-data --description="Client datasource using an external Derby instance" --property port=1527:password=pouet:user=pouet:serverName=localhost:databaseName=pouet:connectionAttributes=create\\=true jdbc/datasource/pouet 
create-jms-resource --restype javax.jms.ConnectionFactory --description "Standard pouet connection factory" jms/pouet/ConnectionFactory 
create-jms-resource --restype javax.jms.Topic --property Name=jms_CrudServiceNotifier jms/CrudServiceNotifier 
create-jms-resource --restype javax.jms.Topic jms/TaskExecution 
create-jms-resource --restype javax.jms.Topic jms/TaskExecution/InDesign 
deploy --force "C:\\Documents and Settings\\ndx\\.m2\\repository\\com\\netoprise\\neo4j-connector\\0.1-SNAPSHOT\\neo4j-connector-0.1-SNAPSHOT.rar" 
create-connector-connection-pool --raname=neo4j-connector-0.1-SNAPSHOT --connectiondefinition=com.netoprise.neo4j.connection.Neo4JConnectionFactory --property=xa=true:dir=\$\{com.sun.aas.instanceRoot\}/lib/databases/neo4j Neo4jPool 
create-connector-resource --poolname=Neo4jPool neo4j/pool 

を私は通常、すべてのthosesの手順を実行しますグラスフィッシュasadminmultimode。次の命令

E:\java-ext\glassfish3\bin\asadmin.bat --user "pouet" --passwordfile src\main\config\glassfish.password multimode --file target\config\current\create-domain.txt 

を用いて手ですべてのことを実行している場合

それは実行に2分未満かかります。

しかし、それは、ログの最後の行は

No domain initializers found, bypassing customization step 
Domain pouet created. 
Domain pouet admin port is 4848. 
Domain pouet admin user is "pouet". 
Command create-domain executed successfully. 
Attempting to start pouet.... Please look at the server log for more details..... 

Process Explorerことで、ドメインの起動時にストールしたまま、次のPOMの設定を使用してMavenを経由

   <plugin> 
        <groupId>org.codehaus.mojo</groupId> 
        <artifactId>exec-maven-plugin</artifactId> 
        <version>1.2</version> 
        <executions> 
         <execution> 
          <id>create start and configure domain</id> 
          <phase>package</phase> 
          <goals> 
           <goal>exec</goal> 
          </goals> 
         </execution> 
        </executions> 
        <configuration> 
         <executable>${glassfish.asadmin}</executable> 
         <arguments> 
          <argument>--user</argument> 
          <argument>"${glassfish.user}"</argument> 
          <argument>--passwordfile</argument> 
          <argument>"${glassfish.passwordFile}"</argument> 
          <argument>multimode</argument> 
          <!-- - - file is a multimode subcommand parameter, and not an asadmin parameter --> 
          <argument>--file</argument> 
          <argument>"${user.glassfish.config.path}/create-domain.txt"</argument> 
         </arguments> 
        </configuration> 
       </plugin> 

を、それを実行すると、幹部によって生成されたすべてのプロセスのために示し、 mavenプラグイン、CPU消費はまったくありません。

また、幹部のMavenプラグインが作成したコマンドラインは、私は手で入力したものと全く同じです

[DEBUG] Executing command line: cmd /c E:\java-ext\glassfish3\bin\asadmin.bat --user "pouet" --passwordfile "E:\JavaWorkspace\pouet\pouet-ear/src/main/config/glassfish.password" multimode --file "E:\JavaWorkspace\pouet\pouet-ear/target/config/current/create-domain.txt" 

です。

だから、どうすればそのプロセスがハングアップする可能性がありますか?それを修正するために私は何ができますか?

[EDIT]プロセスは以下のものをハングアップする前に、最後の行に命令を表示・ドメインを開始するために--verboseフラグを追加:

4 août 2011 16:05:58 com.sun.enterprise.admin.launcher.GFLauncherLogger info 
INFO: Successfully launched in 16 msec. 
[#|2011-08-04T16:06:03.078+0200|INFO|glassfish3.1|null|_ThreadID=1;_ThreadName=Thread-1;|Running GlassFish Version: GlassFish Server Open Source Edition 3.1 (build 43)|#] 

[#|2011-08-04T16:06:03.156+0200|INFO|glassfish3.1|org.glassfish.ha.store.spi.BackingStoreFactoryRegistry|_ThreadID=10;_ThreadName=Thread-1;|Registered org.glassfish.ha.store.adapter.cache.ShoalBackingStoreProxy for persistence-type = replicated in BackingStoreFactoryRegistry|#] 

[#|2011-08-04T16:06:03.843+0200|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=27;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 297ms - bound to [0.0.0.0:8181]|#] 

[#|2011-08-04T16:06:03.859+0200|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=28;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 266ms - bound to [0.0.0.0:4848]|#] 

[#|2011-08-04T16:06:03.859+0200|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=32;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 219ms - bound to [0.0.0.0:3700]|#] 

[#|2011-08-04T16:06:03.859+0200|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=29;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 391ms - bound to [0.0.0.0:8080]|#] 

[#|2011-08-04T16:06:03.921+0200|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=35;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 15ms - bound to [0.0.0.0:7676]|#] 

[#|2011-08-04T16:06:04.109+0200|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.server|_ThreadID=1;_ThreadName=Thread-1;|GlassFish Server Open Source Edition 3.1 (43) startup time : Felix (3 360ms), startup services(1 656ms), total(5 016ms)|#] 

[#|2011-08-04T16:06:05.281+0200|INFO|glassfish3.1|javax.enterprise.system.tools.admin.org.glassfish.server|_ThreadID=46;_ThreadName=Thread-1;|JMXStartupService: Started JMXConnector, JMXService URL = service:jmx:rmi://172.27.63.177:8686/jndi/rmi://172.27.63.177:8686/jmxrmi|#] 

誰かがJMX後に開始することが何であるかを知っており、どのような場合にはおそらくそれが始動するのを妨げる可能性があります、それは、私がその奇妙なバグを修正するのに役立つと思います。

答えて

1

私が今までに予想していたよりも多くのmaven katasを実行したので、今私は解決策を見つけました。これは(明らかに)maven-antrun-pluginになります。その使用

、私は次のmaven antrunコード

    <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-antrun-plugin</artifactId> 
        <executions> 
         <execution> 
          <id>create start and configure domain</id> 
          <phase>process-resources</phase> 
          <goals> 
           <goal>run</goal> 
          </goals> 
          <configuration> 
           <failOnError>true</failOnError> 
           <target> 
            <exec executable="${glassfish.asadmin}" dir="${glassfish.asadmin.path}" 
             failonerror="true" vmlauncher="false"> 
             <arg value="--echo"/> 
             <arg value="true"/> 
             <arg value="--interactive"/> 
             <arg value="false"/> 
             <arg value="--user"/> 
             <arg value="${glassfish.user}"/> 
             <arg value="--passwordfile"/> 
             <arg value="${glassfish.passwordFile}"/> 

             <arg value="multimode"/> 

             <arg value="--printprompt=false"/> 
             <arg value="--file"/> 
             <arg value="${user.glassfish.config.path}/create-domain.txt"/> 
            </exec> 
           </target> 
          </configuration> 
         </execution> 
        </executions> 

でのMaven Execの設定を置き換えそして、それは完璧に動作します!

関連する問題