Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.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
带有Gmail的Java电子邮件在Eclipse/Maven中与在打包的jar中表现不同_Java_Eclipse_Maven_Gmail_Starttls - Fatal编程技术网

带有Gmail的Java电子邮件在Eclipse/Maven中与在打包的jar中表现不同

带有Gmail的Java电子邮件在Eclipse/Maven中与在打包的jar中表现不同,java,eclipse,maven,gmail,starttls,Java,Eclipse,Maven,Gmail,Starttls,我有一个基于javax.mail的“Gmail.java”类,它通过Gmail帐户发送电子邮件已经有一段时间了 最近,我发现了Maven,并开始使用它来启动我所有的新项目 在这个最新的项目上(使用Maven原型),出于某种原因,无论我想在Eclipse中还是从部署的jar中运行程序,都需要打开或关闭以下属性: props.put("mail.smtp.starttls.enable", "true"); 如果在Eclipse内部运行时出现这一行,则会出现StackOverflow问题中经常提到

我有一个基于javax.mail的“Gmail.java”类,它通过Gmail帐户发送电子邮件已经有一段时间了

最近,我发现了Maven,并开始使用它来启动我所有的新项目

在这个最新的项目上(使用Maven原型),出于某种原因,无论我想在Eclipse中还是从部署的jar中运行程序,都需要打开或关闭以下属性:

props.put("mail.smtp.starttls.enable", "true");
如果在Eclipse内部运行时出现这一行,则会出现StackOverflow问题中经常提到的“PKIX路径构建失败”异常。然后,如果我打包我的应用程序并从某个linux shell运行它,一切都会好起来,电子邮件也会发送

另一方面,如果我对该行进行注释,则在Eclipse中运行时会发送电子邮件,如果我打包并部署,则会收到一个运行时错误,即与Gmail通信需要SSL

这是我的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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>group.id</groupId>
<artifactId>artifactId</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>Name</name>
<url>http://maven.apache.org</url>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<repositories>
    <repository>
        <id>project.local</id>
        <name>project</name>
        <url>file:${project.basedir}/repo</url>
    </repository>
</repositories>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
                <execution>
                    <id>create-my-bundle</id>
                    <phase>package</phase>
                    <goals>
                        <goal>single</goal>
                    </goals>
                    <configuration>
                        <descriptorRefs>
                            <descriptorRef>jar-with-dependencies</descriptorRef>
                        </descriptorRefs>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
<dependencies>
    <dependency>
        <groupId>org.htmlcleaner</groupId>
        <artifactId>HtmlCleaner</artifactId>
        <version>1.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.0</version>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.8.1</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-all</artifactId>
        <version>1.8.5</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.hamcrest</groupId>
        <artifactId>hamcrest-integration</artifactId>
        <version>1.2.1</version>
    </dependency>
    <dependency>
        <groupId>net.avh4.util</groupId>
        <artifactId>imagecomparison</artifactId>
        <version>0.0.2</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>commons-httpclient</groupId>
        <artifactId>commons-httpclient</artifactId>
        <version>3.1</version>
    </dependency>
    <dependency>
        <groupId>commons-httpclient</groupId>
        <artifactId>commons-httpclient</artifactId>
        <version>3.1</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>
    <dependency>
        <groupId>org.jdom</groupId>
        <artifactId>jdom</artifactId>
        <version>1.1.3</version>
    </dependency>
    <dependency>
        <groupId>com.stevesoft.pat</groupId>
        <artifactId>pat</artifactId>
        <version>1.5.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.0</version>
    </dependency>
    <dependency>
        <groupId>org.codehaus.jettison</groupId>
        <artifactId>jettison</artifactId>
        <version>1.3.4</version>
    </dependency>
    <dependency>
        <groupId>javax.mail</groupId>
        <artifactId>mail</artifactId>
        <version>1.4</version>
    </dependency>
</dependencies>

4.0.0
组id
人工的
0.0.1-快照
罐子
名称
http://maven.apache.org
UTF-8
项目.本地
项目
文件:${project.basedir}/repo
org.apache.maven.plugins
maven编译器插件
2.3.2
1.6
1.6
org.apache.maven.plugins
maven汇编插件
创建我的包
包裹
仅有一个的
带有依赖项的jar
org.htmlcleaner
HtmlCleaner
1.3
org.apache.commons
commons-lang3
3
朱尼特
朱尼特
4.8.1
测验
org.mockito
莫基托所有
1.8.5
测验
org.hamcrest
汉克雷斯特积分
1.2.1
net.avh4.util
图像比较
0.0.2
测验
commons httpclient
commons httpclient
3.1
commons httpclient
commons httpclient
3.1
log4j
log4j
1.2.17
org.jdom
Java文档对象模型
1.1.3
com.stevesoft.pat
拍打
1.5.3
org.apache.commons
commons-lang3
3
org.codehaus.jettison
抛弃
1.3.4
javax.mail
邮政
1.4