1

Liferay 6.2 GA5 Community Edition を使用しています。

サンプル ケース に 2 つservice.xmlのエンティティがあります。たとえば、エンティティ A と B とします。

Service Builder を実行すると、ソース コードに多くの JAVA ファイルが生成され、次の場所にある JAR ファイルも生成されます。

".\my-app\liferay-plugins-sdk-6.2\portlets\my-app-portlet\docroot\WEB-INF\lib\my-app-service.jar"

com.mycompany.myapp.model7-zip で開くと、パッケージにエンティティ A と B のクラスが含まれていることがわかります。

次に、 のエンティティ A を削除しようとしservice.xmlました。ソース コードで生成された対応する JAVA ファイルを削除してから、Service Builder を再度実行しましたがmy-app-service.jar、エンティティ A はまだ存在しています。

JARファイルから完全に削除するにはどうすればよいですか? 私の場合、生成されたJAVAファイルを手動で削除しましたが、Service Builderはそれを削除しません。

4

1 に答える 1

3

ServiceBuilder はコードジェネレーターであるため、新しいコードのみを生成します。

一度生成されたコードを取り除きたい場合は、Java クラスだけでなく、Spring 構成、Hibernate 構成なども取り除く必要があります。これらはすべて手動で削除する必要があります。そして、コードがまだ jar に残っている場合は、古き良きant clean(または使用するビルド環境) は my-app-service.jar ファイルを削除する必要があります (それ以外の場合は、手動で削除して再構築することもできます)。次回のビルド プロセスまたは ServiceBuilder の実行時)

プロジェクトのすべてのファイルで A の出現箇所を検索して、まだ残っているものがあるかどうかを確認することをお勧めします。

于 2016-09-28T06:28:56.383 に答える