设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12810|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " \, h4 `5 g1 Q( p& ]
5 }+ N! e% T3 S; p, h. E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 d) l& H: i/ b1 u; q: a9 L  n( a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 y6 s8 @8 M- [* e6 @4 Yswarm.SignatureNotFoundException
6 v0 r: h2 v# B$ \. a        at swarm.Selector.<init>(Selector.java:76)0 q, ~- u7 q/ u$ ^
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ W* Q  c1 m! i7 f9 V4 e
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ E3 l+ d; T' z; o3 W( z) c0 W  r2 B

# r  \" E; q; U5 D) }4 t! W1 ?import swarm.objectbase.SwarmImpl;/ o+ _. Z* ?# A( Z9 D, s! K  W: I3 ]
import swarm.objectbase.Swarm;! I+ ]* J# C8 H8 ~- _( m6 w1 J
import swarm.activity.ScheduleImpl;9 k. s. {9 U8 g* V5 x. Y+ i& f
import swarm.activity.Activity;
3 J+ z* }' y! C9 himport swarm.activity.ActionGroupImpl;% i1 M- u7 K0 O) \% y8 E3 {
import swarm.collections.ListImpl;
" B/ \1 N- B1 ?& J) zimport swarm.defobj.Zone;
+ s. [+ g2 I, ]. M9 |* }import swarm.Globals;* \1 p4 F2 w5 o9 i5 @
import swarm.Selector;" v1 R) _/ @$ h# J: @  I1 u
import swarm.activity.ActionGroup; # S1 \6 n# \( L7 a
class Agent {/ \; a0 ~$ k# y: }
        char id;
) e$ A2 N0 E% t$ ]. d+ `9 f& ~% P" f& L, U' c( |3 c
        Agent(char id) {; L9 `$ I0 O6 c
                this.id = id;
- O# ]# o! y* U        }$ y+ w4 W2 w* K

" N( V: ?2 n/ I5 z+ q$ p9 n+ S0 i        public void agentStep() {9 ?' I& P% q7 W  r) j9 f( B# h& v
                System.out.println(id + ":" + Globals.env.getCurrentTime());
, N: Y  a$ x( V. N2 f        }; F- b3 w' X! ]. H+ v6 z% U
}
2 `/ g0 R' V+ x* d% p; Y$ _- P# }* W& }/ B( Q) {/ |; k
public class ActionGroupDemo extends SwarmImpl {+ ?0 Q# I0 i% X+ Z( K, @
        ScheduleImpl schedule;) u% |) F8 C& X! {5 H
        ActionGroupImpl actionGroup;; H; `  s8 U- \
        ListImpl list;
, W/ G6 R: @$ }1 o  r+ h6 r        char Id = 'a';
. E. n( ?- x' m# i! E2 Z
, G3 m& R! M. T6 I7 P  y& b! b        ActionGroupDemo(Zone aZone) {
0 h! x6 C3 w( `( R$ z7 A! w) ], q; G                super(aZone);: K; [& b) Y$ l9 V: C' T
                list = new ListImpl(aZone);
  O" `  X" S$ `7 K" c, [                swarmSetp();
: e* I8 Y8 ]& d" m5 r                actionGroup = new ActionGroupImpl(aZone);
  e, y) h# e4 y+ C; k: C# `                schedule = new ScheduleImpl(aZone);
6 Q; C$ J4 N+ F# V5 z                try {
3 [- X0 H: k  S! F. \$ a                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' e) w- Y; L; ^/ e# Q6 j3 B; `                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ a& d; V  g9 [( |: K0 r; u                        * o  }4 Z" W3 S- F: T0 w3 J
                        actionGroup.createActionForEach$message(list, agentSel);
7 b# }3 k; k. h: K$ c7 H                        actionGroup.createActionTo$message(this, swarmSel);, z* W2 `- k; \( C: N# ]" Z
                        schedule.at$createAction(0, actionGroup);
9 ^' g0 n* h1 g' |+ \0 y                        schedule.at$createAction(1, actionGroup);+ ?2 b2 P% ^. `/ y8 T, N$ i8 n
                        schedule.at$createAction(2, actionGroup);- c$ K: J6 i. x/ H

' O2 u% z' m5 n6 A                } catch (Exception e) {2 S0 U* ?. }% O" M
                        e.printStackTrace(System.err);
1 Y6 M% W7 `% T: |9 D! r3 `                        //System.out.println(e);
* d% [% n, w" V# [( t4 ]                        System.exit(1);
0 S; L6 ]$ u* z5 E; s* x$ l6 d: {                }( a9 l4 {0 P# S" {% E/ G6 _6 `9 [
4 r2 A2 r* r0 s) ~3 T3 c! b
4 S$ h  O6 V+ p: f" @% m% o
        }
$ y& ?% l0 ?4 {+ K! x3 Y. H3 F* X$ N; N# Z: k# u* s
        private void swarmSetp() {! x% B9 d# T, @) j, z! `" h' P- t$ i
                list.addLast(new Agent(Id));' f; A* e7 D* a
                Id++;
: y$ L0 M+ p+ Y+ Q* z# ?- R: z        }
1 A/ t* n# Q. y, M0 Z9 N. f$ [$ n0 n% _* @, D/ K* U- V
        public Activity activateIn(Swarm context) {
. ^8 N8 v! R9 o% e- _; n                super.activateIn(context);8 {/ O0 V) z; {
                schedule.activateIn(this);
* A* ~8 w' j# o                return getActivity();( {- M3 ~0 H; j3 U0 l
        }  F8 c' O1 B0 R; r0 L3 x8 |# T

* Z; X8 E1 S1 e7 l" L        public static void main(String[] args) {$ X8 `5 p0 s3 {. w8 B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( N2 @3 X, G& i: r+ x" [                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  l2 o+ Q1 L) X2 ?+ J                swarms.buildObjects();, k: z9 Q# i: W! T+ b4 B2 j$ h: P
                swarms.buildActions();0 N; ~# Z, @- J" m
                swarms.activateIn(null).run();% w# v0 P* A; V" U7 ?+ D2 O% Q
        }
9 S+ \0 G% D1 K- Y4 F
5 W( J, Y+ `) U- S7 S}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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