Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven android编译多个源目录_Java_Android_Maven_Maven 3_Mirah - Fatal编程技术网

Java Maven android编译多个源目录

Java Maven android编译多个源目录,java,android,maven,maven-3,mirah,Java,Android,Maven,Maven 3,Mirah,我已经用这个创建了一个maven android项目。我想在我的项目中集成源文件。所以我把上面提到的插件添加到pom.xml中。我为插件设置了配置部分,将源目录指向src/main/mirah 但是当我运行mvncile时,它只编译src/main/java中的源代码。我试着用mvn-xcompile运行它来调试这个问题,但是我在那里找不到任何与mirah或mirahmaven插件相关的东西 它使用原型创建了两个项目-project和projectit(tests),根目录中有一个pom.xml

我已经用这个创建了一个maven android项目。我想在我的项目中集成源文件。所以我把上面提到的插件添加到pom.xml中。我为插件设置了配置部分,将源目录指向src/main/mirah

但是当我运行
mvncile
时,它只编译src/main/java中的源代码。我试着用
mvn-xcompile
运行它来调试这个问题,但是我在那里找不到任何与mirah或mirahmaven插件相关的东西

它使用原型创建了两个项目-project和projectit(tests),根目录中有一个pom.xml,project和projectit目录中有一个pom.xml。我已经在根目录和项目的pom.xml中尝试了上述配置

我遇到了这个与使用有关的问题,但我不知道它是否对我的情况有帮助。因为我的mirah插件根本没有被调用

这是做我想做的事的正确方法吗?任何有关设置的帮助,或如何解决此问题的指针,都将不胜感激

我的pom.xml的相关部分

<plugin>
   <groupId>org.mirah.maven</groupId>
   <artifactId>maven-mirah-plugin</artifactId>
   <version>1.0</version>
   <configuration>
       <sourceDirectory>src/main/mirah</sourceDirectory>
       <outputDirectory>target/classes</outputDirectory>
       <bytecode>true</bytecode>
       <verbose>false</verbose>
   </configuration>
   <executions>
      <execution>
         <phase>compile</phase>
         <goals><goal>compile</goal></goals>
      </execution>
   </executions>
</plugin>

org.mirah.maven
我可以通过下面的答案,使用
mvn org.mirah.maven:maven-mirah-plugin:1.0:compile
来编译mirah源代码。但是
mvncile
仍然只编译src/main/java中的源代码,而不是src/main/mirah中的源代码

对于任何对
mvn-xcompile的输出感兴趣的人来说,这里是。

这个页面说mirah插件扩展了默认的编译器插件。因此,如果buildhelper插件适用于默认的编译器插件,那么它将适用于多个源目录

查看,您可能不需要自己指定
sourceDirectory
outputDirectory
,因为您似乎正在使用默认值

-X
开关不会直接对mirah插件产生任何影响,因为它本身不会进行任何跟踪(高于默认编译器插件的跟踪)

您是否可以显示您的
-X
输出以显示未调用mirah插件

或者,您可以自己构建mirah插件并添加跟踪。它似乎不是一个复杂的插件

当您尝试直接调用插件时会发生什么?例如

mvn org.mirah.maven:maven-mirah插件:1.0:compile

编辑:

我自己也尝试过,这对我来说很有效(我说的“有效”是指插件被调用了——我的构建实际上失败了)


4.0.0
临时雇员
临时雇员
0.0.1-快照
org.mirah.maven
maven mirah插件
1
真的
真的
编译
编译
使用此输出:

D:\dev\workspaces\3.6\temp>mvn compile
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building Unnamed - temp:temp:jar:0.0.1-SNAPSHOT
[INFO]    task-segment: [compile]
[INFO] ------------------------------------------------------------------------
[INFO] [resources:resources {execution: default-resources}]
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO] [compiler:compile {execution: default-compile}]
[INFO] Nothing to compile - all classes are up to date
[INFO] [mirah:compile {execution: default}]
[INFO] No sources to compile
Parsing...
  D:\dev\workspaces\3.6\temp\src\main\mirah/test.mirah
Inferring types...
* [Mirah::Typer] Learned local type under #<Mirah::AST::StaticScope:0xbc5245> : a = Type(int)

... ETC ...

[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Unknown error - Unknown Error (20047) - D:\dev\workspaces\3.6\temp\target\classes\D:
D:\dev\workspace\3.6\temp>mvn编译
[信息]正在扫描项目。。。
[信息]------------------------------------------------------------------------
[信息]未命名的建筑-临时:临时:jar:0.0.1-快照
[信息]任务段:[编译]
[信息]------------------------------------------------------------------------
[信息][资源:资源{执行:默认资源}]
[警告]使用平台编码(实际上是Cp1252)复制过滤后的资源,即构建依赖于平台!
[信息]正在复制0资源
[信息][编译器:编译{执行:默认编译}]
[信息]无需编译-所有类都是最新的
[INFO][mirah:compile{execution:default}]
[信息]没有要编译的源
解析。。。
D:\dev\workspace\3.6\temp\src\main\mirah/test.mirah
推断类型。。。
*[Mirah::Typer]在#下学习了本地类型:a=type(int)
... 等
[错误]生成错误
[信息]------------------------------------------------------------------------
[INFO]未知错误-未知错误(20047)-D:\dev\workspace\3.6\temp\target\classes\D:

我不知道这个错误意味着什么,因为我不是mirah用户。

+1对于mvn org.mirah.maven..:编译建议。它下载了插件并试图编译mirah源代码。mvn-xcompile的输出在这里,因为它有点长。现在我只需要弄清楚如何使用mvn compile调用它。抱歉,没有看到更新。是的,maven mirah插件可以独立工作。我只是不知道如何让它与Java代码一起工作。如果我没有看到任何其他回复,我会批准这个答案。至少这让我更接近了一步,谢谢。嗯,如果我是你,我会把你的项目剥离到最底层,然后再试一次,每次添加一个项目,直到它停止工作。嗯,它是精简到最底层的。我创建了android原型,没有添加其他代码或配置,然后添加了maven插件,仅此而已。也许我可以从maven mirah版本开始,然后尝试添加android和java。我会把事情的进展发回来。
D:\dev\workspaces\3.6\temp>mvn compile
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building Unnamed - temp:temp:jar:0.0.1-SNAPSHOT
[INFO]    task-segment: [compile]
[INFO] ------------------------------------------------------------------------
[INFO] [resources:resources {execution: default-resources}]
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO] [compiler:compile {execution: default-compile}]
[INFO] Nothing to compile - all classes are up to date
[INFO] [mirah:compile {execution: default}]
[INFO] No sources to compile
Parsing...
  D:\dev\workspaces\3.6\temp\src\main\mirah/test.mirah
Inferring types...
* [Mirah::Typer] Learned local type under #<Mirah::AST::StaticScope:0xbc5245> : a = Type(int)

... ETC ...

[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Unknown error - Unknown Error (20047) - D:\dev\workspaces\3.6\temp\target\classes\D: