设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9498|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + X: V& n. Q) Q2 f) l

0 h- j8 ?5 T, u9 G0 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 W' n4 Z1 }0 W; I0 @4 u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 t9 a+ u; v3 H, l0 @$ Y
swarm.SignatureNotFoundException; Y. X  a% l: F) h  U9 g
        at swarm.Selector.<init>(Selector.java:76)
, O! o" c9 _- G! [! c        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 V/ O' c: R* J        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 e3 _! S. W( s" G5 x
3 J% D& B; u( a! N
6 d9 x: A7 Y. ]) e5 limport swarm.objectbase.SwarmImpl;6 k+ W# q$ X6 z2 v9 Y) Q$ z6 r% m
import swarm.objectbase.Swarm;
  T2 s/ e9 O, I0 gimport swarm.activity.ScheduleImpl;
" V! p4 f; I% ^$ \/ m, aimport swarm.activity.Activity;) H3 {! c! A8 t% i% o% P- |- \
import swarm.activity.ActionGroupImpl;, I9 G/ C- q0 H  ~1 k
import swarm.collections.ListImpl;
, P* D- j; C; Y% h- H; T) q/ pimport swarm.defobj.Zone;
2 d3 E0 `; Y0 p3 Q" L9 bimport swarm.Globals;
' `/ e: y% v$ T% W# s% himport swarm.Selector;2 f3 K) `) Z; z6 H0 s( H
import swarm.activity.ActionGroup;
* x$ Y  o8 i7 Y8 x. C( |class Agent {
. i/ o  ]2 {, ~/ `8 [3 c1 S        char id;
( A( p" y4 _' d2 {) Y$ W5 G  K+ a2 E2 Y
        Agent(char id) {
5 F' J* G7 }* J6 a                this.id = id;( K4 i" P- f  S5 A$ T8 ]
        }
; ?' g" f* m7 t6 e8 a
) V( [  R1 s) p8 J, p4 _        public void agentStep() {2 _& W! x! t- D
                System.out.println(id + ":" + Globals.env.getCurrentTime());
  S0 M* f3 K6 Q: D0 o5 |: o- O3 l        }
$ a3 }3 B" v: R/ j! R! ~}  t. R8 ~" r/ ^

7 U2 H8 d* s0 l7 ^, S- I$ p/ qpublic class ActionGroupDemo extends SwarmImpl {( x( K: s( i( K: M
        ScheduleImpl schedule;
5 J0 @8 b4 p! b: W) d        ActionGroupImpl actionGroup;
: b$ d5 k  @+ B1 Z0 [; e% h        ListImpl list;
+ u7 W8 m2 @+ _  i        char Id = 'a';
$ Q, q. s+ J  M% w6 `* z
2 R! K" u: B3 d) ~+ J        ActionGroupDemo(Zone aZone) {
# w! ^+ s" N5 W$ p) p, p, ~9 d% v                super(aZone);
1 B) {5 c6 |. T  l                list = new ListImpl(aZone);
3 \& K, n( Q0 Q3 b8 `- ]* W                swarmSetp();/ N5 w3 Z* o( H1 @3 c
                actionGroup = new ActionGroupImpl(aZone);1 V. F% z9 b: J/ Y
                schedule = new ScheduleImpl(aZone);7 A& P2 \# i/ |( A/ s
                try {$ k/ m! S- H2 k! k
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 d0 i+ U9 C0 W; t+ H- W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 f% z$ P- S0 f9 U: q1 ?. b
                        
1 f; \# s3 k  d6 C  f& n( M, Y                        actionGroup.createActionForEach$message(list, agentSel);
6 v/ l4 g, K* W  h                        actionGroup.createActionTo$message(this, swarmSel);
5 p' G( R0 p# ^8 j8 \0 n  G! z                        schedule.at$createAction(0, actionGroup);) i& V3 k5 A3 b0 _7 C
                        schedule.at$createAction(1, actionGroup);
1 q* }) F$ [& U6 g. r8 c- `) Q: U                        schedule.at$createAction(2, actionGroup);) ?6 S  C/ @: r, \3 V
* L! A+ k; _8 f
                } catch (Exception e) {% F) R3 u) ^4 g+ G# B# f/ S
                        e.printStackTrace(System.err);8 e1 t, y8 @1 I" b) W; j
                        //System.out.println(e);# u+ ~  z, l* i9 Y1 D
                        System.exit(1);
& z) [/ h" Y5 K. K                }
8 B. x( w5 k. t6 Z6 ?. R. O! ~1 A  O) @# T

/ C' f3 V  N) A. N3 |/ t        }& U  g2 r# q* z+ Q2 J9 I

9 M* X2 L  `( @- D        private void swarmSetp() {
+ \" R& l2 E8 t( U  f7 d                list.addLast(new Agent(Id));
. R0 g( R3 V; ?- b# T$ d' }                Id++;5 p5 ]5 L: Y2 F7 K
        }
1 T7 o; x$ G4 m
; p+ c0 {! p9 C4 [0 |3 A- ]3 X1 c        public Activity activateIn(Swarm context) {0 [0 V$ X7 K8 Y4 y
                super.activateIn(context);7 A4 k$ e" y1 {3 q$ t1 m
                schedule.activateIn(this);8 F! Z6 t3 y0 c( ^" o
                return getActivity();
1 c0 t$ S* H2 {; g        }3 z6 E6 x& m# W& @  s) @/ w
3 @/ S6 ^$ P9 p& @2 x4 w
        public static void main(String[] args) {! T' I9 ~+ p5 s3 E+ r4 Z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 B  k- n+ d- R+ @# O' |5 i  ^                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 v5 v) u9 P5 w1 w0 Q3 a                swarms.buildObjects();
( q# N( n) U: I+ o                swarms.buildActions();
" ^; g1 p( j" c* Z# G1 c                swarms.activateIn(null).run();
1 y; J' s2 Y+ ~( \/ E; j  {- ~4 {        }# y2 x/ t# T& m! d& C5 r) B

9 T4 W  R6 c$ K+ e}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-14 01:54 , Processed in 0.025083 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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