1、工程引用别外一个java工程时,怎么发布部署
项目分成两个工程:表现层为web工程,后台逻辑层为java工程;编辑web工程的build path,在“Projects”里Add那个java工程;
这样发布的时候,export成war包时,那个java工程会自动打成jar包,放到web工程的lib下面
引用java工程csservice执行mvn clean install的时候默认将其打包好放在工程cswebbefore的web-inf的lib目录下
2、maven中涉及到的编码格式
个人认为在执行命令,mvn clean install的时候,经常会遇到
非法字符:\65279 非法的表达式开始 等等一些奇怪的错误。
个人认为先看看你的maven配置的编码格式。
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
在确认POM文件中已有上述<project.build.sourceEncoding>内容的前提下,增加以下内容(如已包含maven-compiler-plugin的相关内容,则只需在相应位置增加红色字体部分内容):
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven-compiler-plugin.version>2.3.2</maven-compiler-plugin.version> <junit.version>4.10</junit.version> <log4j.version>1.2.16</log4j.version> <slf4j.log4j.version>1.6.4</slf4j.log4j.version> ... </properties> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${maven-compiler-plugin.version}</version> <configuration> <source>1.6</source> <target>1.6</target> <encoding>UTF-8</encoding> <compilerArguments> <verbose /> </compilerArguments> </configuration> </plugin> </plugins> </build>
注意:
1、同时指定<project.build.sourceEncoding>属性和<encoding>的方式可适用于Maven2和Maven3。
2、在Maven3中可以只增加<project.build.sourceEncoding>属性而不指定<encoding>,即能解决编译问题。如果只指定<encoding>编译不会出错,但会出现以下警告。建议两者都进行指定或只指定前者。警告信息如下:
[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!
3、在Maven2中,如果只指定<project.build.sourceEncoding>属性则编译出错;如果只指定<encoding>编译不会出错,但会出现与第2点类似的警告,建议两者都进行指定,以免对运行产生影响。
执行mvn,生成好jar包并在其它工程引用此jar及其源码jar,如果还是乱码,可能就是eclipse的配置问题了,确认windows->Preferences->general->Workspace->Text file encoding设置为UTF-8
确认windows->Preferences->general->Content Types->右侧Context Types树,点开Text,选择Java Source File,在下面的Default encoding输入框中输入UTF-8,点Update