`
simpledev
  • 浏览: 196187 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

maven+jdk1.5编译部署工程(请尝试使用 -source 1.5 以启用注释)问题说明

阅读更多

1.接上文|maven部署web工程基础步骤(http://simpledev.iteye.com/blog/254281)
 在开发的工程中可能会使用jdk1.5的注释或泛型,如:
@Override
@SuppressWarnings("unused")
@SuppressWarnings("deprecation")
Map<String, String> map = new HashMap<String, String>();
maven默认是使用低版本编译,mvn package -e 抛出如下一些异常:

D:\wap_build\src\main\java\org\fengzhong\wapbuild\util\FileUtil.java:[374,28] 需
要 ';'
D:\wap_build\src\main\java\org\fengzhong\wapbuild\util\FileUtil.java:[374,33] 非
法字符: \59272
D:\wap_build\src\main\java\org\fengzhong\wapbuild\util\FileUtil.java:[374,39] 非
法字符: \58933
D:\wap_build\src\main\java\org\fengzhong\wapbuild\util\FileUtil.java:[374,45] 非
法字符: \65533

D:\wap_build2.5.1\src\main\java\org\fengzhong\wapbuild\action\news\SaveNewsIssue
ContentAction.java:[295,25] -source 1.3 中不支持注释
(请尝试使用 -source 1.5 以启用注释)
                        @SuppressWarnings("unused")
D:\wap_build2.5.1\src\main\java\org\fengzhong\wapbuild\service\research\impl\Mob
ileResearchServiceImpl.java:[165,19] -source 1.3 中不支持泛型
(请尝试使用 -source 1.5 以启用泛型)
                Map<String, String> map = new HashMap<String, String>();

D:\wap_build\src\main\java\org\fengzhong\wapbuild\util\StringUtils.java:[134,36]
 需要 ';'
D:\wap_build\src\main\java\org\fengzhong\wapbuild\util\StringUtils.java:[134,41]
 非法字符: \59272
D:\wap_build\src\main\java\org\fengzhong\wapbuild\util\StringUtils.java:[134,47]
 非法字符: \58933
D:\wap_build\src\main\java\org\fengzhong\wapbuild\util\StringUtils.java:[134,53]
 非法字符: \65533

D:\wap_build\src\main\java\org\fengzhong\wapbuild\service\product\impl\ProjectIm
pl.java:[135,20] -source 1.3 中不支持泛型
(请尝试使用 -source 1.5 以启用泛型)
                List<Channel> temp2 = new ArrayList<Channel>();
说明:FileUtil.java和StringUtils.java在工程中没有问题,在类中写了main函数方法。


解决方法:需要对pom.xml配置plugin,如果工程中的jar文件都是统一由maven管理,配置:
<plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.5</source>
                    <target>1.5</target>
                </configuration>
            </plugin>
就可以了,否则需要指定jar的物理位置:
<compilerArguments>
               <extdirs>D:\wap_build\src\main\webapp\WEB-INF\lib</extdirs>
             </compilerArguments>
lib默认一般放在工程~\WEB-INF\下面,同时也方便打包时将lib加入war文件中。
如果既没有使用maven管理jar,也没有指定compilerArguments ~  extdirs ~ lib配置路径,在编译时会抛出如:
D:\wap_build\src\main\java\org\fengzhong\wapbuild\action\common\MainAction.java:
[3,30] 软件包 com.opensymphony.xwork 不存在
D:\wap_build\src\main\java\org\fengzhong\wapbuild\action\common\MainAction.java:
[5,32] 找不到符号
符号: 类 ActionSupport
public class MainAction extends ActionSupport{
... 等找不到软件包或符号异常。
打开pom.xml文件,配置jdk1.5编译,例如完整pom.xml文件代码:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.fengzhong.wapbuild</groupId>
  <artifactId>wap_build</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>wap_build Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.5</source>
                <target>1.5</target>
                <encoding>UTF-8</encoding>
             <compilerArguments>
               <extdirs>D:\wap_build\src\main\webapp\WEB-INF\lib</extdirs>
             </compilerArguments>
            </configuration>
        </plugin>
    </plugins>
  </build>
</project>

 
都配置好的情况下:mvn package -e
...
[INFO] Generating war D:\wap_build\target\wap_build-1.0-SNAPSHOT.war
[INFO] Building war: D:\wap_build\target\wap_build-1.0-SNAPSHOT.war
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 28 seconds
[INFO] Finished at: Wed Aug 12 08:52:54 GMT 2009
[INFO] Final Memory: 4M/34M
[INFO] ------------------------------------------------------------------------
在创建的wap_build第一级目录target\下面就可以找到以pom.xml文件中: artifactId-version.war命名的部署文件了。

命令索引:
 D:\>mvn archetype:create -DgroupId=org.fengzhong.wapbuild -DartifactId=wap_build -DarchetypeArtifactId=maven-archetype-webapp
 D:\>cd wap_build
 D:\wap_build>mvn package -e
目录索引:

D:/
  wap_build
    src
      \main\java   ...工程中的java文件
      \main\resources   ...工程中的资源文件
      \main\webapp  ...工程中的页面文件(如:jsp,html,styles/css,js,images,WEB-INF/classes,WEB-INF/lib,WEB-INF/web.xml)
    target(BUILD SUCCESSFUL通过之后才会生成,一般重新生成时,最好把该目录删除)
        classes(编译后的类路径)
        wap_build-1.0-SNAPSHOT  ---部署文件夹
        wap_build-1.0-SNAPSHOT.war ---部署文件war
    pom.xml

 

分享到:
评论

相关推荐

    nutz-1.r.57的JDK1.5编译

    3. 构建工程:使用支持JDK1.5的构建工具(如Ant或Maven的旧版本)进行编译。 4. 测试:在JDK1.5环境中运行测试用例,确保功能完整且没有错误。 5. 打包:生成JAR文件,如"nutz-1.r.57-jdk1.5.jar",供JDK1.5环境下的...

    JDK环境配置+apache-maven-3.6.3+1.8JDK+apache-tomcat-9.0.39

    JDK环境配置+apache-maven-3.6.3+1.8JDK+apache-tomcat-9.0.39 超级详细的Java环境配置教程 对于很多初学者来说,我想可能很多人都会遇到JDK环境变量的配置问题。明明就是按照度娘上的教程去一步步配置的,但还是...

    maven3.5.4+JDK1.8

    maven-3.5.4+jdk1.8打包备用。maven-3.5.4+jdk1.8打包备用。maven-3.5.4+jdk1.8打包备用。maven-3.5.4+jdk1.8打包备用。maven-3.5.4+jdk1.8打包备用。

    hudson+maven+svn自动化部署

    ### 自动化部署的核心知识点详解 #### 一、自动化部署的环境搭建 自动化部署的核心在于构建一个稳定且高效的持续集成/持续部署(CI/CD)环境。为了实现这一目标,通常需要以下几项关键技术组件: 1. **JDK (Java ...

    Jenkins+Maven+SVN+Tomcat 持续集成环境快捷部署

    搭建Jenkins+Maven+SVN+Tomcat的持续集成环境,需要按照以下步骤: 1. 环境准备 - JDK1.8.0_131,版本不低于1.7,使用最新版本以获得最佳性能和最新特性。 - Apache Maven 3.3.9,不推荐使用3.5.0版本,以免出现...

    Maven兼容jdk1.7版本

    同时,要确保系统的PATH环境变量设置正确,指向的是与Maven匹配的JDK版本,以避免潜在的兼容性问题。 通过了解Maven 3.0.5与JDK 1.7的兼容性,开发者可以更自信地在他们的Java 7项目中采用Maven,确保构建过程的...

    Maven默认使用JDK1.5的问题及解决方案

    Maven默认使用JDK1.5的问题是指在使用Maven构建项目时,默认情况下Maven会使用JDK1.5版本,这可能会导致一些问题和不兼容性问题。解决这个问题有两种方式,即修改IDEA的配置和在pom.xml文件中设置JDK版本。 首先,...

    maven3.2.3+eclipse4.4+JDK1.8环境搭建

    在已经安装好JDK和Maven的Eclipse中,可以通过“Install New Software”选项安装Maven插件,或者直接使用命令`mvn eclipse:eclipse`生成Eclipse项目文件,然后导入Eclipse进行开发。 2. **Eclipse的Maven配置** ...

    MAVEN-3.5.4,需要jdk7及以上版本

    Maven的插件系统允许扩展其功能,例如使用maven-compiler-plugin进行Java代码编译,maven-surefire-plugin进行单元测试,maven-jar-plugin打包应用。开发者可以根据项目需求选择和配置合适的插件。 7. **聚合与...

    eclipse中使用maven创建项目JDK版本默认是1.5解决方法.docx

    在Eclipse中使用Maven创建项目时,你可能会遇到一个常见的问题,即默认的JDK版本被设置为较旧的1.5。这可能会导致一些现代Java特性无法使用,或者与你的开发环境不兼容。以下是解决这个问题的详细步骤: 首先,我们...

    持续集成环境maven+nexus+jenkins+svn搭建

    在安装 Maven 之前,我们需要确保 Java Development Kit (JDK) 已经安装在我们的计算机上,因为 Maven 需要使用 JDK 来编译和运行 Java 程序。安装 Maven 时,我们需要根据提示选择合适的安装目录和配置文件的位置。...

    bcprov-jdk15on-1.60-API文档-中文版.zip

    赠送jar包:bcprov-jdk15on-1.60.jar; 赠送原API文档:bcprov-jdk15on-1.60-javadoc.jar; 赠送源代码:bcprov-jdk15on-1.60-sources....人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    linux上发版相关的nginx(相关压缩包)+maven+jdk

    在“linux上发版相关的nginx+maven+jdk”这个场景中,通常的流程是这样的: 1. 首先,开发者在本地使用JDK环境编写和编译Java代码,Maven帮助管理依赖和构建项目。 2. 编译完成后,Maven将项目打包成WAR或JAR文件,...

    maven-compiler-plugin-3.8.0-source-release插件

    对于大型项目,推荐使用 Maven 的私有仓库来存储常用插件,以提高构建速度。 ** 总结** `maven-compiler-plugin-3.8.0-source-release` 是 Maven 生态系统中不可或缺的一部分,它提供了可靠的源代码编译功能,使得...

    IDEA+Maven导入新包JDK版本冲突问题

    IDEA 和 Maven 是 Java 开发中常用的集成开发环境和项目管理工具,但是当我们在 IDEA 中使用 Maven 管理项目时,可能会遇到 JDK 版本冲突问题。今天我们将讨论如何解决这个问题。 一、问题背景 ---------------- ...

    jenkins+svn+maven+java-配置+安装+部署(windows版)

    ### Jenkins + SVN + Maven + Java 自动化部署详解(Windows版) #### 一、Jenkins 安装与配置 **1. Jenkins 安装** - **下载安装**: 首先,从官方网址 (https://jenkins.io/download/) 下载最新的Jenkins安装包...

    apache-maven-3.5.2+jdk7以上.rar

    综上所述,"apache-maven-3.5.2+jdk7以上"这个压缩包提供的内容应该是Maven 3.5.2的安装包,用户在解压后,配合JDK 7或更高版本,可以在本地环境中配置并使用Maven进行Java项目的构建和管理。通过Maven,开发者可以...

    maven-source-without-ratCheck

    2. **Maven插件**:Maven使用插件来执行各种任务,如编译、测试、打包、部署等。每个插件都有一个或多个目标(goals),可以在构建生命周期的不同阶段执行。 3. **Apache Rat插件**:该插件用于检查源代码中的许可...

    bcprov-jdk1.5on-157.jar

    bcprov-jdk1.5on-157.jar欢迎大家下载 好用好用 好用

Global site tag (gtag.js) - Google Analytics