首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >导入java中的文件

导入java中的文件
EN

Stack Overflow用户
提问于 2013-11-25 20:27:09
回答 2查看 1.5K关注 0票数 0
代码语言:javascript
复制
package com.teamsite.client;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.util.Hashtable;
import com.interwoven.cssdk.common.CSClient;
import org.apache.commons.lang.StringUtils;
import com.interwoven.cssdk.access.CSUser;
import com.interwoven.cssdk.common.CSClient;
import com.interwoven.cssdk.common.CSException;
import com.interwoven.cssdk.filesys.CSAreaRelativePath;
import com.interwoven.cssdk.workflow.CSExternalTask;
import com.interwoven.cssdk.workflow.CSTask;
import com.interwoven.cssdk.workflow.CSURLExternalTask;
import com.interwoven.cssdk.workflow.CSWorkflow;
import java.util.logging.*;

public class ApplicationEdition implements CSURLExternalTask{

private static String userid;
private static String cssdkconfigfile;
private String applicationName;
private String applicationEditionPath;
private static CSClient csClient;

public static final String KEY_TARGET_TASK_NAME = "target_task_name";
private String transitionComment = "Auditing for deployed files ";
private String transition = "";

public static String getCssdkconfigfile() {
    return cssdkconfigfile;
}

public static void setCssdkconfigfile(String cssdkconfigfile) {
    ApplicationEdition.cssdkconfigfile = cssdkconfigfile;
}

private static CSClient getCsClient() {
    return csClient;
}

private static void setCsClient(CSClient csClient) {
    ApplicationEdition.csClient = csClient;
}
private static String getUserid() {
    return userid;
}

private static void setUserid(String userid) {
    ApplicationEdition.userid = userid;
}

private String getApplicationName() {
    return applicationName;
}

private void setApplicationName(String applicationName) {
    this.applicationName = applicationName;
}

private String getApplicationEditionPath() {
    return applicationEditionPath;
}

private void setApplicationEditionPath(String applicationEditionPath) {
    this.applicationEditionPath = applicationEditionPath;
}

@Override
 public void execute(CSClient client, CSExternalTask currentTask, Hashtable params) throws     CSException {

    String userId = client.toString();
    String cssdkconfigfile = "D:\\iw-home\\TeamSite\\cssdk\\cssdk.cfg";
    setUserid(userId);
    setCssdkconfigfile(cssdkconfigfile);
    String targetTaskName = currentTask.getVariable(KEY_TARGET_TASK_NAME);

    CSUser thisTaskOwner = currentTask.getOwner();
   String thisTaskOwnerAddress = thisTaskOwner.getEmailAddress();

  String branchName = currentTask.getArea().getBranch().getName();
  CSAreaRelativePath[] files = currentTask.getFiles();
  String Area = currentTask.getArea().getName();
  System.err.println("*********************************************************");
  System.err.println("Target task name"+targetTaskName);
  System.err.println("Task owner's address"+thisTaskOwnerAddress);
  System.err.println("Area name"+Area);
  System.err.println("*********************************************************");
    }  private static CSTask getTaskByName(CSWorkflow job, String name) throws CSException {
        if (name == null) {
            return null;
        }
        CSTask[] tasks = job.getTasks();
        for (int i=0; i<tasks.length; i++) {
            if (name.equals(tasks[i].getName())) {
                return tasks[i];
            }
        }
        return null;        
    }

 public static void showFiles(String string1,String string2,String string3 ) {
    try {
            File filename = new File     ("C:\\temp\\ApplicationEditions_dynamic.txt");

                 BufferedWriter writer = new BufferedWriter(new FileWriter(filename,true));
                 writer.write(string1+"\n");
                 writer.write(string2+"\n");
                 writer.write(string3+"\n");
                 writer.newLine();
                 writer.close();
         } 


     catch (Exception e)
            {
                System.out.println("Error occurred due to branch, refer output file");
            }
    finally {


            }
    }   }    

在此代码中,将在此源文件中导入以下文件

代码语言:javascript
复制
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.util.Hashtable;
import com.interwoven.cssdk.common.CSClient;
import org.apache.commons.lang.StringUtils;
import com.interwoven.cssdk.access.CSUser;
import com.interwoven.cssdk.common.CSClient;
import com.interwoven.cssdk.common.CSException;
import com.interwoven.cssdk.filesys.CSAreaRelativePath;
import com.interwoven.cssdk.workflow.CSExternalTask;
import com.interwoven.cssdk.workflow.CSTask;
import com.interwoven.cssdk.workflow.CSURLExternalTask;
import com.interwoven.cssdk.workflow.CSWorkflow;      

这里的源文件位于"package com.teamsite.client“位置。因此,从location com.interwoven.cssdk.common.CSClient导入的其他文件应该有公共路径,直到"com“文件夹,并且在"com”dir中应该有dir“互编”,而在这个dir中应该有其他dir。

但是,当我在服务器上查看dir时,除了teamsite之外,我没有看到任何其他dir。这段代码运行良好,没有任何问题。

那么,这些其他文件是如何导入到这里的呢?我们的环境有点复杂,但是文件仍然需要在导入的路径上。我们有存放jar的仓库。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2013-11-25 20:36:33

当类加载器查找类(例如com.interwoven.cssdk.workflow.CSExternalTask )时,它会扫描整个类路径,寻找像com/intervowen/cssdk/workflow这样的目录分支。上述声明还涵盖了可能在类路径上爆炸的罐子。

类路径通常包含比可运行的jar文件更多的目录。显然,jar不会包含包中包含的所有类,从com.*开始,因此可以从类路径上的任何位置导入这些类。

票数 1
EN

Stack Overflow用户

发布于 2013-11-25 20:31:38

您可能在类路径上有一个带有.jar包的com.interwoven.cssdk.文件。

.jar文件的行为就像一个zip文件,其中包含它自己的目录结构。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20202611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档