enerieren Sie Java automatisch aus .proto mit maven / m2e in Eclipse ID

Für mein Team möchte ich maven / eclipse build so konfigurieren, dass automatisch Java-Code aus @ generiert wir*.proto Dateien (in einem Projekt, das @ verwend gRPC). Derzeit muss man @ ausführmvn generate-source odermvn protobuf:compile (wie im Pluginusage page). Oder was ist das gleiche Add-Run-Konfiguration zum Aufrufen von maven goalcompile.

Wenn das Eclipse Maven-Projekt aktualisiert wird Alt+ F5) oder IDE wird neu gestartet, Projekt wird neu erstellt, aber ohne das, was in @ erscheinen sotarget/generated und verwandelt das Projekt in rot. Man muss also ein Projekt generieren und aktualisieren F5). UPDATE Eclipse benötigt Quellordner, die in @ konfiguriert si.clathpath Datei

ie ich weiß sollte das m2e Stecker sein, aber ich konnte nur einen findenhttps: //github.com/masterzen/m2e-protoc-connecto für das älteste Googles plugin com.google.protobuf.tools:maven-protoc-plugin, das wird derzeit noch nicht bei @ erwähhttps: //github.com/grpc/grpc-jav

Wir verwenden genau referenzierte / empfohlene

  <groupId>org.xolstice.maven.plugins</groupId>
  <artifactId>protobuf-maven-plugin</artifactId>

das ist

<build>
  <extensions>
    <extension>
      <groupId>kr.motd.maven</groupId>
      <artifactId>os-maven-plugin</artifactId>
      <version>1.4.1.Final</version>
    </extension>
  </extensions>
  <plugins>
    <plugin>
      <groupId>org.xolstice.maven.plugins</groupId>
      <artifactId>protobuf-maven-plugin</artifactId>
      <version>0.5.0</version>
      <configuration>
        <protocArtifact>com.google.protobuf:protoc:3.1.0:exe:${os.detected.classifier}</protocArtifact>
        <pluginId>grpc-java</pluginId>
        <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.0.1:exe:${os.detected.classifier}</pluginArtifact>
      </configuration>
      <executions>
        <execution>
          <goals>
            <goal>compile</goal>
            <goal>compile-custom</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

Verbunden

Verknüpfung mit generiertem Java-Protobuf-Code in Eclipsesah dies an, aber dieser Autor verwendete ein anderes älteres, nicht unterstütztes Plugin:Eclipse-Build-Schleife, die durch vom Protobuf generierten Code verursacht wird (im Zusammenhang mit Maven Project Builder)
P.P.S Das Pluginhttps: //github.com/igor-petruk/protobuf-maven-plugi hat jedoch die Fortsetzung alshttps: //github.com/os72/protoc-jar-maven-plugi

Antworten auf die Frage(4)

Ihre Antwort auf die Frage