1.下载并编译lucene-solr的源代码,并导入 eclipse sts等

2.修改SolrDispatchFilter的solr.solr.home属性,我们这里将其直接修改为一个本地绝对路径,以便能够直接启动:

      //String solrHome = (String) config.getServletContext().getAttribute(SOLRHOME_ATTRIBUTE);
String solrHome="E:\\demo\\lucene-solr\\solr\\server\\solr";

3.修改StartSolrJetty类

    WebAppContext bb = new WebAppContext();
bb.setServer(server);
bb.setContextPath("/solr");
bb.setWar("solr/webapp/web");

4.启动StartSolrJetty main方法

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/E:/demo/lucene-solr/solr/core/lib/slf4j-log4j12-1.7.7.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/E:/demo/lucene-solr/solr/solrj/test-lib/slf4j-log4j12-1.7.7.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/E:/demo/lucene-solr/solr/solr-ref-guide/lib/slf4j-simple-1.7.7.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
0 INFO (main) [ ] o.e.j.u.log Logging initialized @512ms
>>> STARTING EMBEDDED JETTY SERVER, PRESS ANY KEY TO STOP
186 INFO (main) [ ] o.e.j.s.Server jetty-9.3.20.v20170531
590 INFO (main) [ ] o.e.j.w.StandardDescriptorProcessor NO JSP Support for /solr, did not find org.eclipse.jetty.jsp.JettyJspServlet
645 ERROR (main) [ ] o.a.s.u.StartupLoggingUtils Missing Java Option solr.log.dir. Logging may be missing or incomplete.
650 INFO (main) [ ] o.a.s.s.SolrDispatchFilter ___ _ Welcome to Apache Solr™ version 7.2.2
650 INFO (main) [ ] o.a.s.s.SolrDispatchFilter / __| ___| |_ _ Starting in standalone mode on port null
650 INFO (main) [ ] o.a.s.s.SolrDispatchFilter \__ \/ _ \ | '_| Install dir: null
664 INFO (main) [ ] o.a.s.s.SolrDispatchFilter |___/\___/_|_| Start time: 2019-03-06T08:37:17.132Z
691 INFO (main) [ ] o.a.s.c.SolrResourceLoader solr home defaulted to 'solr/' (could not find system property or JNDI)
698 INFO (main) [ ] o.a.s.c.SolrXmlConfig Loading container configuration from E:\demo\lucene-solr\solr\server\solr\solr.xml
10482 INFO (main) [ ] o.a.s.c.CorePropertiesLocator Found 1 core definitions underneath E:\demo\lucene-solr\solr\server\solr
10484 INFO (main) [ ] o.a.s.c.CorePropertiesLocator Cores are: [new_core]
10490 INFO (coreLoadExecutor-6-thread-1) [ ] o.a.s.c.TransientSolrCoreCacheDefault Allocating transient cache for 2147483647 transient cores
10568 WARN (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrConfig Couldn't add files from E:\demo\lucene-solr\solr\server\solr\..\..\..\..\contrib\extraction\lib filtered by .*\.jar to classpath: E:\demo\lucene-solr\solr\server\solr\..\..\..\..\contrib\extraction\lib
10568 WARN (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrConfig Couldn't add files from E:\demo\lucene-solr\solr\server\solr\..\..\..\..\dist filtered by solr-cell-\d.*\.jar to classpath: E:\demo\lucene-solr\solr\server\solr\..\..\..\..\dist
10568 WARN (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrConfig Couldn't add files from E:\demo\lucene-solr\solr\server\solr\..\..\..\..\contrib\clustering\lib filtered by .*\.jar to classpath: E:\demo\lucene-solr\solr\server\solr\..\..\..\..\contrib\clustering\lib
10569 WARN (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrConfig Couldn't add files from E:\demo\lucene-solr\solr\server\solr\..\..\..\..\dist filtered by solr-clustering-\d.*\.jar to classpath: E:\demo\lucene-solr\solr\server\solr\..\..\..\..\dist
10569 WARN (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrConfig Couldn't add files from E:\demo\lucene-solr\solr\server\solr\..\..\..\..\contrib\langid\lib filtered by .*\.jar to classpath: E:\demo\lucene-solr\solr\server\solr\..\..\..\..\contrib\langid\lib
10569 WARN (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrConfig Couldn't add files from E:\demo\lucene-solr\solr\server\solr\..\..\..\..\dist filtered by solr-langid-\d.*\.jar to classpath: E:\demo\lucene-solr\solr\server\solr\..\..\..\..\dist
10569 WARN (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrConfig Couldn't add files from E:\demo\lucene-solr\solr\server\solr\..\..\..\..\dist filtered by solr-ltr-\d.*\.jar to classpath: E:\demo\lucene-solr\solr\server\solr\..\..\..\..\dist
10569 WARN (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrConfig Couldn't add files from E:\demo\lucene-solr\solr\server\solr\..\..\..\..\contrib\velocity\lib filtered by .*\.jar to classpath: E:\demo\lucene-solr\solr\server\solr\..\..\..\..\contrib\velocity\lib
10569 WARN (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrConfig Couldn't add files from E:\demo\lucene-solr\solr\server\solr\..\..\..\..\dist filtered by solr-velocity-\d.*\.jar to classpath: E:\demo\lucene-solr\solr\server\solr\..\..\..\..\dist
10603 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.SolrIndexConfig IndexWriter infoStream solr logging is enabled
10606 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrConfig Using Lucene MatchVersion: 7.2.2
10794 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.s.IndexSchema [new_core] Schema name=example
10977 INFO (main) [ ] o.e.j.s.h.ContextHandler Started o.e.j.w.WebAppContext@6e9175d8{/solr,file:///E:/demo/lucene-solr/solr/webapp/web/,AVAILABLE}{solr/webapp/web}
10998 INFO (main) [ ] o.e.j.s.AbstractConnector Started ServerConnector@74d1dc36{HTTP/1.1,[http/1.1]}{0.0.0.0:8983}
10998 INFO (main) [ ] o.e.j.s.Server Started @11529ms
11572 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.RestManager Registered ManagedResource impl org.apache.solr.rest.schema.analysis.ManagedWordSetResource for path /schema/analysis/stopwords/english
11573 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.RestManager Registered ManagedResource impl org.apache.solr.rest.schema.analysis.ManagedSynonymGraphFilterFactory$SynonymManager for path /schema/analysis/synonyms/english
11573 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.RestManager Added observer of type org.apache.solr.rest.schema.analysis.ManagedStopFilterFactory to existing ManagedResource /schema/analysis/stopwords/english
11573 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.RestManager Added observer of type org.apache.solr.rest.schema.analysis.ManagedSynonymGraphFilterFactory to existing ManagedResource /schema/analysis/synonyms/english
11579 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.s.IndexSchema Loaded schema example/1.6 with uniqueid field item_no
11579 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.RestManager Added observer of type org.apache.solr.rest.schema.analysis.ManagedStopFilterFactory to existing ManagedResource /schema/analysis/stopwords/english
11579 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.RestManager Added observer of type org.apache.solr.rest.schema.analysis.ManagedSynonymGraphFilterFactory to existing ManagedResource /schema/analysis/synonyms/english
11579 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.RestManager Added observer of type org.apache.solr.rest.schema.analysis.ManagedStopFilterFactory to existing ManagedResource /schema/analysis/stopwords/english
11579 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.RestManager Added observer of type org.apache.solr.rest.schema.analysis.ManagedSynonymGraphFilterFactory to existing ManagedResource /schema/analysis/synonyms/english
11625 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.CoreContainer Creating SolrCore 'new_core' using configuration from instancedir E:\demo\lucene-solr\solr\server\solr, trusted=true
11685 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrCore solr.RecoveryStrategy.Builder
11691 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.c.SolrCore [[new_core] ] Opening new SolrCore at [E:\demo\lucene-solr\solr\server\solr], dataDir=[E:\demo\lucene-solr\solr\server\solr\data\]
11847 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.XSLTResponseWriter xsltCacheLifetimeSeconds=5
21333 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.UpdateHandler Using UpdateLog implementation: org.apache.solr.update.UpdateLog
21333 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.UpdateLog Initializing UpdateLog: dataDir= defaultSyncLevel=FLUSH numRecordsToKeep=100 maxNumLogsToKeep=10 numVersionBuckets=65536
21356 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.CommitTracker Hard AutoCommit: if uncommited for 15000ms;
21357 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.CommitTracker Soft AutoCommit: disabled
21474 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IFD][coreLoadExecutor-6-thread-1]: init: current segments file is "segments_3"; deletionPolicy=org.apache.solr.core.IndexDeletionPolicyWrapper@2801c812
21474 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IFD][coreLoadExecutor-6-thread-1]: init: load commit "segments_3"
21479 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IFD][coreLoadExecutor-6-thread-1]: now checkpoint "_0(7.2.2):C1 _1(7.2.2):C1" [2 segments ; isCommit = false]
21479 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IFD][coreLoadExecutor-6-thread-1]: 0 msec to checkpoint
21479 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IW][coreLoadExecutor-6-thread-1]: init: create=false
21479 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IW][coreLoadExecutor-6-thread-1]:
dir=NRTCachingDirectory(MMapDirectory@E:\demo\lucene-solr\solr\server\solr\data\index lockFactory=org.apache.lucene.store.NativeFSLockFactory@340158a7; maxCacheMB=48.0 maxMergeSizeMB=4.0)
index=_0(7.2.2):C1 _1(7.2.2):C1
version=7.2.2
analyzer=org.apache.solr.update.SolrIndexConfig$DelayedSchemaAnalyzer
ramBufferSizeMB=100.0
maxBufferedDocs=-1
mergedSegmentWarmer=null
delPolicy=org.apache.solr.core.IndexDeletionPolicyWrapper
commit=null
openMode=APPEND
similarity=org.apache.lucene.search.similarities.DavidSimilarity
mergeScheduler=ConcurrentMergeScheduler: maxThreadCount=-1, maxMergeCount=-1, ioThrottle=true
codec=Lucene70
infoStream=org.apache.solr.update.LoggingInfoStream
mergePolicy=[TieredMergePolicy: maxMergeAtOnce=10, maxMergeAtOnceExplicit=30, maxMergedSegmentMB=5120.0, floorSegmentMB=2.0, forceMergeDeletesPctAllowed=10.0, segmentsPerTier=10.0, maxCFSSegmentSizeMB=8.796093022207999E12, noCFSRatio=0.1
indexerThreadPool=org.apache.lucene.index.DocumentsWriterPerThreadPool@1266476d
readerPooling=true
perThreadHardLimitMB=1945
useCompoundFile=false
commitOnClose=true
indexSort=null
writer=org.apache.solr.update.SolrIndexWriter@35039ae8 21480 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IW][coreLoadExecutor-6-thread-1]: MMapDirectory.UNMAP_SUPPORTED=true
21481 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IW][coreLoadExecutor-6-thread-1]: flush at getReader
21481 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [DW][coreLoadExecutor-6-thread-1]: startFullFlush
21482 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IW][coreLoadExecutor-6-thread-1]: now apply all deletes for all segments buffered updates bytesUsed=0 reader pool bytesUsed=0
21482 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [BD][coreLoadExecutor-6-thread-1]: waitApply: no deletes to apply
21550 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IW][coreLoadExecutor-6-thread-1]: incRefDeleter for NRT reader version=10 segments=_0(7.2.2):C1 _1(7.2.2):C1
21550 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IW][coreLoadExecutor-6-thread-1]: return reader version=10 reader=StandardDirectoryReader(segments_3:10:nrt _0(7.2.2):C1 _1(7.2.2):C1)
21550 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [DW][coreLoadExecutor-6-thread-1]: coreLoadExecutor-6-thread-1 finishFullFlush success=true
21551 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.u.LoggingInfoStream [IW][coreLoadExecutor-6-thread-1]: getReader took 69 msec
21565 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.s.SolrIndexSearcher Opening [Searcher@6e7addcb[new_core] main]
21578 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.ManagedResourceStorage File-based storage initialized to use dir: E:\demo\lucene-solr\solr\server\solr\conf
21580 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.ManagedResourceStorage Loaded LinkedHashMap at path _rest_managed.json using file:dir=E:\demo\lucene-solr\solr\server\solr\conf
21580 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.ManagedResource Loaded initArgs {} for /rest/managed
21581 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.ManagedResourceStorage Loaded LinkedHashMap at path _schema_analysis_stopwords_english.json using file:dir=E:\demo\lucene-solr\solr\server\solr\conf
21581 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.ManagedResource Loaded initArgs {ignoreCase=true} for /schema/analysis/stopwords/english
21581 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.s.a.ManagedWordSetResource Loaded 35 words for /schema/analysis/stopwords/english
21582 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.ManagedResource Notified 4 observers of /schema/analysis/stopwords/english
21582 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.ManagedResourceStorage Loaded LinkedHashMap at path _schema_analysis_synonyms_english.json using file:dir=E:\demo\lucene-solr\solr\server\solr\conf
21582 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.ManagedResource Loaded initArgs {ignoreCase=true,format=solr} for /schema/analysis/synonyms/english
21583 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.s.a.ManagedSynonymGraphFilterFactory Loaded 3 synonym mappings for /schema/analysis/synonyms/english
21585 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.r.ManagedResource Notified 4 observers of /schema/analysis/synonyms/english
21600 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.h.c.SpellCheckComponent Initializing spell checkers
21610 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.s.DirectSolrSpellChecker init: {name=default,field=text,classname=solr.DirectSolrSpellChecker,distanceMeasure=internal,accuracy=0.5,maxEdits=2,minPrefix=1,maxInspections=5,minQueryLength=4,maxQueryFrequency=0.01}
21621 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.h.c.SuggestComponent Initializing SuggestComponent
21624 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.s.s.SolrSuggester init: {name=mySuggester,lookupImpl=FuzzyLookupFactory,dictionaryImpl=DocumentDictionaryFactory,field=cat,weightField=price,suggestAnalyzerFieldType=string,buildOnStartup=false}
21649 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.s.s.SolrSuggester Dictionary loaded with params: {name=mySuggester,lookupImpl=FuzzyLookupFactory,dictionaryImpl=DocumentDictionaryFactory,field=cat,weightField=price,suggestAnalyzerFieldType=string,buildOnStartup=false}
21651 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.h.c.QueryElevationComponent Loading QueryElevation from: E:\demo\lucene-solr\solr\server\solr\conf\elevate.xml
21667 INFO (coreLoadExecutor-6-thread-1) [ x:new_core] o.a.s.h.ReplicationHandler Commits will be reserved for 10000ms.
21786 INFO (searcherExecutor-7-thread-1-processing-x:new_core) [ x:new_core] o.a.s.c.QuerySenderListener QuerySenderListener sending requests to Searcher@6e7addcb[new_core] main{ExitableDirectoryReader(UninvertingDirectoryReader(Uninverting(_0(7.2.2):C1) Uninverting(_1(7.2.2):C1)))}
21870 INFO (searcherExecutor-7-thread-1-processing-x:new_core) [ x:new_core] o.a.s.c.S.Request [new_core] webapp=null path=null params={q=static+firstSearcher+warming+in+solrconfig.xml&distrib=false&event=firstSearcher} hits=0 status=0 QTime=81
21871 INFO (searcherExecutor-7-thread-1-processing-x:new_core) [ x:new_core] o.a.s.c.QuerySenderListener QuerySenderListener done.
21871 INFO (searcherExecutor-7-thread-1-processing-x:new_core) [ x:new_core] o.a.s.h.c.SpellCheckComponent Loading spell index for spellchecker: default
21871 INFO (searcherExecutor-7-thread-1-processing-x:new_core) [ x:new_core] o.a.s.h.c.SpellCheckComponent Loading spell index for spellchecker: wordbreak
21875 INFO (searcherExecutor-7-thread-1-processing-x:new_core) [ x:new_core] o.a.s.c.SolrCore [new_core] Registered new searcher Searcher@6e7addcb[new_core] main{ExitableDirectoryReader(UninvertingDirectoryReader(Uninverting(_0(7.2.2):C1) Uninverting(_1(7.2.2):C1)))}

参考资料:

【1】http://www.cnblogs.com/mmaa/p/5789860.html

lucene-solr本地调试方法的更多相关文章

  1. hadoop本地调试方法

    Mapreduce 是Hadoop上一个进行分布式数据运算和统计的框架,但是每次运行程序的时候都需要将程序打包并上传的集群环境中运行,这就会让程序的调试变得十分不方便.所以在这里写下这篇博客和大家交流 ...

  2. Hive 本地调试方法

    关键词:hive, debug 本地调试(local debug) Hive 可分为 exec (hive-exec,主要对应源码里的ql目录) 和 metastore 两部分,其中exec对外有两种 ...

  3. fiddler本地调试

    参考:https://blog.csdn.net/letasian/article/details/75021656 有关fiddler基础用法的介绍详见我的上一篇博客:http://www.cnbl ...

  4. Oracle在本地调试成功读取数据,但是把代码放到服务器读不出数据的解决方法。

    用MVC EF框架开发项目,数据库用的是Oracle,本地调试的时候一切正常,但是把代码编译之后放到服务器就会读不出数据. 原因:本地调试环境与服务器环境不一致. 办法:在服务器上装ODT.NET组件 ...

  5. 【matlab】MATLAB程序调试方法和过程

    3.8  MATLAB程序的调试和优化 在MATLAB的程序调试过程中,不仅要求程序能够满足设计者的设计需求,而且还要求程序调试能够优化程序的性能,这样使得程序调试有时比程序设计更为复杂.MATLAB ...

  6. Lucene/Solr开发经验

    1.开篇语2.概述3.渊源4.初识Solr5.Solr的安装6.Solr分词顺序7.Solr中文应用的一个实例8.Solr的检索运算符 [开篇语]按照惯例应该写一篇技术文章了,这次结合Lucene/S ...

  7. 在本地调试微信项目(C#)

    之前一人负责微信的项目,那时2014年LZ还没毕业..啥都不懂,为此特别感谢@SZW,没有你的框架,我可能都无从下手 当时做项目最麻烦的就是调试,因为很多页面都要使用 网页授权获取用户信息 在电脑上打 ...

  8. Perl的调试方法

    来源: http://my.oschina.net/alphajay/blog/52172 http://www.cnblogs.com/baiyanhuang/archive/2009/11/09/ ...

  9. 《转》VS2010进行远程调试方法总结

    ---恢复内容开始--- 原文地址:http://blog.sina.com.cn/s/blog_a459dcf5010153o7.html 假设现在有A.B两台PC机. VS2010安装在A机器上, ...

随机推荐

  1. vue中v-model动态生成的实例详解

    每一行有一个input和一个select,其中行数是根据服务器返回的json数据动态变化的.那么问题来了,我们要怎样动态生成v-model? <template> <div> ...

  2. Win7 VS2017编译Blender2.79

    去年在VS2013环境编译过一次,重装系统后换了VS2017,正好刚编译完Godot3.0.2,顺手把Blender也编译了吧. 官方Windows下编译指南 https://wiki.blender ...

  3. C语言函数指针与 c#委托和事件对比

    C语言: 函数指针可以节省部分代码量,写类似具有多态的函数,比如要比较最大值,如果不用函数指针就只能写比较某一类型比如int类型的max函数,这个max无法比较string的大小.函数指针的意义就不多 ...

  4. python data science handbook1

    import numpy as np import matplotlib.pyplot as plt import seaborn; seaborn.set() rand = np.random.Ra ...

  5. vue组件自定义属性命名

    今天自己写vue组件demo的时候发现一个有趣的问题:vue组件自定义属性命名不支持用驼峰命名! 上面图示为正常情况下的自定义属性,没有任何问题. 但是一旦出现自定义属性中包含了大写字母,则如下图所示 ...

  6. thinkphp添加数据 add()方法

    thinkphpz内置的add()方法用于向数据库表添加数据,相当于SQL中的INSERT INTO 行为添加数据 add 方法是 CURD(Create,Update,Read,Delete / 创 ...

  7. N!中末尾有多少个0

    问题:先从100!的末尾有多少零         =>    再推广到  任意N!的末尾有多少个零 分析:首先想到慢慢求解出100!或N!,但计算机表示数有限,且要防止溢出. 则从数学上分析:一 ...

  8. 《python语言程序设计》_第5章_循环

    #5.1_引言 程序1: 结果: 程序2: 结果: sum is 45 ##注意整个循环语句都要内缩进循环内部 ##ctrl+c中止一个无限循环运行 程序清单5-1: 结果: #5.2.1_实例研究: ...

  9. 转 tomcat+nginx+redis实现均衡负载、session共享(二)

    http://www.cnblogs.com/zhrxidian/p/5491285.html http://www.cnblogs.com/zhrxidian/p/5432886.html

  10. html-有趣的标签-会移动的文字

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...