Dal Maven 3.0.3 tutti i plugin vengono eseguiti nell'ordine in cui sono nel vostro pom.xml. Quindi impostare il flag eseguibile in un modo indipendente dalla piattaforma è facile come usare il plugin maven-enforcer subito dopo il plugin di appassembler.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.3.1</version>
<executions>
<execution>
<id>enforce-beanshell</id>
<phase>package</phase>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<evaluateBeanshell>
<condition>
import java.io.File;
print("set executable for file ${basedir}/dist/bin/mql");
new File("${basedir}/dist/bin/mql").setExecutable(true,false);
true;
</condition>
</evaluateBeanshell>
</rules>
<fail>false</fail>
</configuration>
</execution>
</executions>
</plugin>
2.0.0 imposta il bit + x sugli script generati. –