设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11036|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # h6 F" f( Q0 O- u7 ]: L3 N
" Z8 {7 A6 z9 e7 E7 P* H& X& G! e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# E/ m* W6 R" n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 W/ s2 E4 L: r" Wswarm.SignatureNotFoundException& M$ K* D7 r! C# X0 E- M. K4 N9 `
        at swarm.Selector.<init>(Selector.java:76)- @6 B+ z' D' Z5 ^' h
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 }" A( }) R9 O! i' q7 y3 ?1 q1 L* Z
        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 ^* W, J, ]7 r

/ q! z4 S; E4 |7 |2 a# O7 z2 ^2 V7 _" z4 m3 g5 {
import swarm.objectbase.SwarmImpl;
- l* `8 V7 B" b7 t( p3 O$ Q7 Dimport swarm.objectbase.Swarm;
( ^& A6 x0 P: i% f2 x" e2 z0 e5 mimport swarm.activity.ScheduleImpl;8 K4 D# o" ?! E
import swarm.activity.Activity;
  z6 F9 a2 Q2 A2 H  K  d( @! ]import swarm.activity.ActionGroupImpl;; {+ A* c( i8 L8 h# s: A% V- d
import swarm.collections.ListImpl;
" j6 o# K' m* yimport swarm.defobj.Zone; 4 \6 g/ @7 T2 q+ P/ a8 \" e
import swarm.Globals;
/ m3 K* z: Z. G' m2 timport swarm.Selector;% r: Y% j. g: C) ?1 c
import swarm.activity.ActionGroup;
' v9 D8 @( s" M4 g/ H' Jclass Agent {  ^$ @# l! ]# j2 R! g
        char id;
- g2 S$ J% r5 k1 V9 j, d' u. v
6 w' \$ D- d/ g( A! q        Agent(char id) {$ D5 x' G9 l! Q" d
                this.id = id;* Z& W0 _7 R1 U+ B2 X
        }5 G+ V, v/ S0 J! P0 i$ M) F

% l7 \  \, d7 q! X: e        public void agentStep() {4 m. q; b( X6 ^/ S
                System.out.println(id + ":" + Globals.env.getCurrentTime());: U0 Z: k, I' [" Q
        }; ?7 B+ e# h+ Z0 q$ X% R
}
7 s3 q! [8 e$ i8 J6 Q
/ L0 e! \8 p8 y4 upublic class ActionGroupDemo extends SwarmImpl {
' Q; A1 N6 Q5 r9 B6 g: k9 Q8 h5 I        ScheduleImpl schedule;/ B2 [! F! s; i
        ActionGroupImpl actionGroup;+ b/ q3 M/ h( ?4 F" {3 Y8 Q- P$ t
        ListImpl list;
  V9 ?9 R& W5 c% M3 A        char Id = 'a';
8 k! l' D2 B- g. X% @, _. b7 O
% Q- Q7 o5 t+ y8 I5 j6 w  ]        ActionGroupDemo(Zone aZone) {+ _2 j1 _' i1 b- o- W" {" U, l' Z
                super(aZone);
, C  d3 @) |$ A+ ^$ e                list = new ListImpl(aZone);
8 j2 o: T" [) f3 T3 c" l- S                swarmSetp();) X& _5 y1 P" @. ~' P9 \3 A
                actionGroup = new ActionGroupImpl(aZone);0 v$ Q+ j2 j0 v% c  r1 v: i
                schedule = new ScheduleImpl(aZone);
' T) p. L/ u1 ~$ X1 |; V/ u4 O6 G                try {, S( x, x4 T6 o" o1 G7 c  s
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 p3 Q9 S- S5 Z4 h7 {! i& ~# o2 k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 j5 S9 ~6 k! W
                        ; h1 y, Q* |9 j  r# H  W
                        actionGroup.createActionForEach$message(list, agentSel);
3 }3 m1 E. ^/ L                        actionGroup.createActionTo$message(this, swarmSel);5 R2 k* U/ E! {2 _0 t
                        schedule.at$createAction(0, actionGroup);
  p! l' h0 R1 k                        schedule.at$createAction(1, actionGroup);  ^9 h- K2 z* P7 W$ B8 J3 H4 c
                        schedule.at$createAction(2, actionGroup);
3 W, b' ~% V  H. c
" b% m1 }, ~! }( o0 k- [( ~" T; R                } catch (Exception e) {- H2 u( U" i& e
                        e.printStackTrace(System.err);
: M. S! j. [$ n3 P# C+ T& ^                        //System.out.println(e);
* ^' l; j) e) F+ L$ `                        System.exit(1);
7 i- B+ H2 n$ ]                }0 B6 o& M% q8 X
$ V" U5 z. A: T, t: E9 T9 P9 K1 o& T
7 R( F& B$ e9 z+ H9 v
        }4 Z7 b7 m, G4 Y% _3 D3 E
# B4 ^1 D3 C8 H+ |% e& ?
        private void swarmSetp() {; V0 ~0 w; ~  w; N+ q  g
                list.addLast(new Agent(Id));- \  X! l, K% q
                Id++;  Y# O4 l( O" T) F( D6 x
        }
' |: v8 @8 O3 G. C
+ b3 M9 X( `% u; B4 h: y        public Activity activateIn(Swarm context) {
- i) s6 m& L  w. }2 M; `                super.activateIn(context);- `$ r( `1 E5 F% H* d
                schedule.activateIn(this);. X; E1 Z4 \2 e5 \* j9 B
                return getActivity();
+ `. c, y& c  V& {6 ^        }8 N# D+ E* H6 D  {% t
" U4 t. F/ a. a- S6 ~) r* i
        public static void main(String[] args) {
. ~; g: w' Z3 G- ?& F                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 `- S. u  o- x                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; R# s7 v/ A* R* Q& X0 B                swarms.buildObjects();
/ `4 D& f. I7 f; V- S  }. f                swarms.buildActions();
* K8 M% q1 m, s0 [                swarms.activateIn(null).run();1 z* P- t" }1 M2 h: l% ]9 z" T
        }9 [; P% u$ Q9 ?- i1 K
8 m9 D( p8 n3 h: w" Z% u
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-1 02:37 , Processed in 0.014017 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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