设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8294|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' s1 `# W! u: E4 c0 y9 c/ Z( A
. j2 a8 @. d3 a$ G2 z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ S8 G, t4 n7 _1 r: M* N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- {% v+ T& I5 |3 s* y! A' h  F) ^swarm.SignatureNotFoundException
4 X4 d' I. h+ ?/ q2 V% Y* y8 P- U8 h        at swarm.Selector.<init>(Selector.java:76). W0 l$ Q7 a8 ^. n' r2 W# G
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# J' Q4 k) G) n# J7 N/ f% K5 Z
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ e- ?4 p" Q! ^2 u! V1 x- e( E$ Z' y3 E( {# m7 n" s* ^# g1 w

" |3 R  K9 C( zimport swarm.objectbase.SwarmImpl;
; I" q4 q) Z2 B/ @/ E2 w4 X6 w. cimport swarm.objectbase.Swarm;
" J4 C3 E4 S! `; |7 Cimport swarm.activity.ScheduleImpl;
- R( G/ Q" K8 [8 _+ ^6 h  eimport swarm.activity.Activity;# b2 `0 c5 ?- L; L
import swarm.activity.ActionGroupImpl;& J7 p& X. U# t. F  N# p) s
import swarm.collections.ListImpl;* z9 b! Y: e! B0 g
import swarm.defobj.Zone; 3 `% t- Q2 x9 v5 _  w
import swarm.Globals;
, Q7 n/ N6 G; Y/ ]import swarm.Selector;
: x$ Q5 S' ^9 I/ p8 w) Nimport swarm.activity.ActionGroup; ' B" v/ M9 Y7 U6 Z+ x" _
class Agent {
2 v* y: t9 d5 M& G        char id;# Q7 p+ |3 J/ V8 ?* P' v' U# Z( p
! J8 G- i4 A; E& Q
        Agent(char id) {
$ K, _4 ]1 d* ~4 z" p                this.id = id;
+ }, L5 t6 [1 X" k% a        }1 i' h; U8 K6 W0 F) F$ }

- |2 t* I0 f# A+ \  y3 b3 F        public void agentStep() {. I' b5 i' ~) \! D- O  X' |- T  D. y9 D
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* m  z* t9 `9 X        }% w6 K  k( G6 l" c5 O, A  r4 a
}7 R- C  _- R4 u6 ]) S/ ~! D- `

  E% _* x' d! h& p- Epublic class ActionGroupDemo extends SwarmImpl {1 i$ s* y* z: D5 Q: G
        ScheduleImpl schedule;
! U7 E# G& k- S$ z8 S        ActionGroupImpl actionGroup;
5 f/ M: R. w' W! D3 ~- j        ListImpl list;
2 E6 O' `  L  D. z) h# O% d        char Id = 'a';+ `; K9 R* `4 F8 Z9 M; m

$ P. c. H  v: ]7 H7 {        ActionGroupDemo(Zone aZone) {6 @4 N4 R; W2 h
                super(aZone);
( V, b5 i9 v7 X                list = new ListImpl(aZone);
# f, C: ?. c- c' J                swarmSetp();" ~- w; e; M/ S3 Y
                actionGroup = new ActionGroupImpl(aZone);6 _' @3 d/ Q* ~4 l* c7 B+ v
                schedule = new ScheduleImpl(aZone);" @4 h& n" D4 x) T8 @* v* @
                try {
6 n& Q* O$ P  Y* O5 J5 ~. q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
# V" g  H: @/ v/ r! n4 E                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! F' I+ V* \% |' f0 S                        2 p+ E* |- u4 J
                        actionGroup.createActionForEach$message(list, agentSel);
5 X2 [2 G+ W$ |                        actionGroup.createActionTo$message(this, swarmSel);5 m: i" c& R3 C$ r$ z
                        schedule.at$createAction(0, actionGroup);2 s, S) L# W" q# Z4 X3 z$ R
                        schedule.at$createAction(1, actionGroup);% M1 S, A" c( d2 h
                        schedule.at$createAction(2, actionGroup);* e4 @4 c' ?% f. d
- T) H7 |: N  a7 L- r5 ]% s
                } catch (Exception e) {
/ W5 J- v8 w( q* f. o                        e.printStackTrace(System.err);
# G. x! _" v! q- q2 E                        //System.out.println(e);
: |) m* `! ~7 C- m' Q1 W                        System.exit(1);+ W  Q/ ]0 t( [6 R
                }" x1 r% X" f9 `/ [- [

) u& Z" L% U- N( @
( H# Q3 r* J* N* r4 L1 Q        }
/ z) K$ K) V6 ^. ?3 Z# Q  {7 K, \
$ \, k. E; k; Z6 z        private void swarmSetp() {2 \( T4 F1 E# U* y# s+ g" i, I& u
                list.addLast(new Agent(Id));
  A9 W4 X  V( S; E                Id++;
4 Z( V) Z0 c" L  X+ \/ p" N- R        }( C  X3 l. B8 p& k( l& m

+ N  I' Z# P0 s- E& h        public Activity activateIn(Swarm context) {0 t' S$ X; {/ i
                super.activateIn(context);
- a( z4 u9 h" ?3 v5 D                schedule.activateIn(this);7 O; e* Y' S, U. L
                return getActivity();
% _+ e. l0 U  `1 A9 D3 b( r: N        }
( R6 {8 ]: I1 [$ W- u7 y
9 j' `+ @  n# ^7 ]: w. S, p        public static void main(String[] args) {  I/ X% D& ^8 S; l" L/ R
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ Q6 q; K$ ?2 Q9 b' M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  n+ @2 H# ^# R! ~+ H                swarms.buildObjects();
6 Q7 I9 a4 i8 P, r4 q: J                swarms.buildActions();
, Q" ~. m% V+ s, b: S# r                swarms.activateIn(null).run();
+ N5 v* B, K* B5 S5 D        }9 U* x2 w+ }* i! M

, K+ K# G! v% R* h9 {' s7 N}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-4-6 23:02 , Processed in 0.018996 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表