小编edd*_*edd的帖子

使用JDK(64位)的SQL Developer找不到JVM

一天早上,我只是想让SQL开发人员处理当前的设置而浪费时间:

  • 操作系统:通过Parallels在Mac上运行的Windows 8.1虚拟机.
  • 没有安装oracle客户端或即时客户端
  • 没有安装Java

可重复的步骤是

  • 我使用JDK(所有64位)下载了SQL Developer for Windows,并将其解压缩到C:/ Program Files /.
  • 我双击C:/ Program Files/sqldeveloper/sqldeveloper.exe

我收到以下消息:

无法启动Java虚拟机

位于路径:

C:/ Program Files/sqldeveloper/jdk/jre/bin/server/jvm.dll

有人可以帮帮我吗?我还尝试首先安装Java 1.8(64位),然后安装没有Java的SQL开发人员版本.这也不起作用.当我选择JDK home的位置时,它还发送了一条错误消息,说它找不到我说的任何JVM.为了增加侮辱伤害,每次我按照这个程序,熊猫防病毒告诉我sqldeveloper被感染,删除文件并鼓励我重新启动.

有人可以帮帮我吗?我非常感谢.

非常感谢你提前

java oracle-sqldeveloper windows-8.1

24
推荐指数
7
解决办法
16万
查看次数

使用Java的Jackson中的通用对象序列化

我希望在字符串中读取 {"a": 1.0} 通用Java对象,同时保持相同的字符串格式.但是,当我尝试时,杰克逊自动将内部表示更改为{a = 1}.换句话说,如何才能打印以下代码{"a": 1.0}而不是{a = 1}?请注意,我必须将其读作Object(由于其他程序限制).

import org.codehaus.jackson.map.ObjectMapper;

public class Main {

    public static void main(String[] args) {
        try
    {
            ObjectMapper mapper = new ObjectMapper();
            Object myObject = mapper.readValue("{\"a\": 1.0}", Object.class);
            System.out.println(myObject.toString());            
    }
    catch (Exception e)
    {
        e.printStackTrace();
      System.err.println(e.getMessage()); 
    }
    }

}
Run Code Online (Sandbox Code Playgroud)

java json jackson

7
推荐指数
2
解决办法
1万
查看次数

ODP.Net和C#的System.Reflection.RuntimeModule.GetTypes()错误

我编写了一个相当复杂的C#应用​​程序,它通过ODP.Net访问oracle数据库.我在Windows XP机器(32位)上开发了应用程序,我安装了ODAC(32位).应用程序在我的开发PC上运行时没有出现故障,但在服务器上抛出异常(Windows Server 2003 x64 Service Pack 2).

我在服务器上安装了.Net framework 4.0(dotNetFx40_Full_x86_x64.exe)的运行时,以及ODAC - 我首先尝试使用适用于Windows x64的第4版(11.2.0.3.0),然后使用ODAC 11.2第4版(11.2. 0.3.0)使用适用于Visual Studio的Oracle Developer Tools.

没有工作.32位版本更进一步.我第一次在数据库上调用LINQ语句时得到以下消息.

   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
   at System.Reflection.RuntimeModule.GetTypes()
   at System.Reflection.Assembly.GetTypes()
   at System.Data.Metadata.Edm.ObjectItemAttributeAssemblyLoader.LoadTypesFromAssembly()
   at System.Data.Metadata.Edm.ObjectItemAssemblyLoader.Load()
   at System.Data.Metadata.Edm.ObjectItemAttributeAssemblyLoader.Load()
   at System.Data.Metadata.Edm.AssemblyCache.LoadAssembly(Assembly assembly, Boolean loadReferencedAssemblies, ObjectItemLoadingSessionData loadingData)
   at System.Data.Metadata.Edm.AssemblyCache.LoadAssembly(Assembly assembly, Boolean loadReferencedAssemblies, KnownAssembliesSet knownAssemblies, EdmItemCollection edmItemCollection, Action`1 logLoadMessage, Object& loaderCookie, Dictionary`2& typesInLoading, List`1& errors)
   at System.Data.Metadata.Edm.ObjectItemCollection.LoadAssemblyFromCache(ObjectItemCollection objectItemCollection, Assembly assembly, Boolean loadReferencedAssemblies, EdmItemCollection edmItemCollection, Action`1 logLoadMessage)
   at System.Data.Metadata.Edm.ObjectItemCollection.ImplicitLoadAssemblyForType(Type type, EdmItemCollection edmItemCollection)
   at System.Data.Metadata.Edm.MetadataWorkspace.ImplicitLoadAssemblyForType(Type type, Assembly callingAssembly)
   at System.Data.Objects.ObjectContext.GetTypeUsage(Type …
Run Code Online (Sandbox Code Playgroud)

c# ado.net odp.net odac

5
推荐指数
1
解决办法
2377
查看次数

NPOI以相同的方式格式化所有单元格

请查看以下代码段.我只是打开excel文件,myfile.xlsx然后从类型的对象List<Account>(我的Account对象只有Date,AccountAmount属性)添加行,并使用名称存储文件myoutputfile.xlsx.我希望我写日期的单元格具有日期格式,而我所拥有的单元格则具有数字格式.但是,如果我尝试下面的代码,所有单元格都格式化#.00(日期也是如此).我已经尝试了一切,有人可以告诉我发生了什么事吗?我正在使用NPOI.

    XSSFWorkbook wb;
    var fileName = "C:/tmp/myfile.xlsx";
    var outputFileName = "C:/tmp/myoutputfile.xlsx";
    using (var file = new FileStream(fileName, FileMode.Open, FileAccess.ReadWrite))
    {
        wb = new XSSFWorkbook(file);
    }

    XSSFSheet sheet = (XSSFSheet) wb.GetSheetAt(0);
    for (int i = 0; i < accountRecs.Count(); ++i) {
        var rec = accountRecs[i];
        var row = sheet.CreateRow(i);
        var dateCell = row.CreateCell(3);
        dateCell.SetCellValue(rec.Date);
        dateCell.CellStyle.DataFormat = wb.CreateDataFormat().GetFormat("dd/MM/yyyy");
        var accountCell = row.CreateCell(4);
        accountCell.SetCellValue(rec.Account);
        var totalValueCell = …
Run Code Online (Sandbox Code Playgroud)

c# excel npoi

5
推荐指数
1
解决办法
864
查看次数

Activator.CreateInstance上的字典中没有给定的密钥

我希望你能帮我一臂之力.这已经困扰了我很久了.我在网上找不到确凿的答案.我有一个简单的类层次结构:BaseClass,ClassA,ClassB和DefaultClass派生自它.它们都有类似ClassA(输入输入)的构造函数:base(输入)......都非常简单.现在我有以下工厂

namespace mynamespace
{
    public class Factory
    {

        public static Dictionary<string, Type> Map = 
        new Dictionary<string, Type>
        {
            {"ClassA", typeof(ClassA)},
            {"ClassB", typeof(ClassB)}
        };
        public static BaseClass Create(Input input)
        {
            Type constructor;
            try
            {
                constructor = Map[input.ClassType];
            }
            catch (KeyNotFoundException)
            {
                constructor = typeof(DefaultClass);
            }
            return (BaseClass) Activator.CreateInstance(constructor, input);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,输入对象的.ClassType成员确定实例化了哪个类.这种类型的构造一直在为一个简单的调用工作

var myClass = Factory.Create(input);
Run Code Online (Sandbox Code Playgroud)

在我的独立应用程序中.现在我必须让应用程序在服务器上运行,并且对Create方法的调用从客户端接收序列化的输入对象.我会说这是有效的应用程序和没有的应用程序之间的唯一区别.现在,输入就是这样的

[DataContract]
public class Input
{
    [DataMember] public string ClassType;
    [DataMember] public string member1;
}
Run Code Online (Sandbox Code Playgroud)

在它没有这样的DataContract或DataMember注释之前.好了,现在代码在Activator.CreateInstance行崩溃了,但是"给定的密钥不存在于字典中".你有什么想法可以解决这个问题吗?唯一的区别是构造函数中的序列化对象.

非常感谢提前和问候.

c#

4
推荐指数
1
解决办法
8965
查看次数

标签 统计

c# ×3

java ×2

ado.net ×1

excel ×1

jackson ×1

json ×1

npoi ×1

odac ×1

odp.net ×1

oracle-sqldeveloper ×1

windows-8.1 ×1