设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9811|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 ~, a: E& P3 g3 w  R
" h9 t% |9 w0 \- f, f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' e2 _9 M# H" N  A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 n3 W& y# c& F1 V& ~1 l% \# Z
swarm.SignatureNotFoundException. b7 T- D& f; |- e' s. Q" e: Z
        at swarm.Selector.<init>(Selector.java:76), }! j) v- X" r
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 V' O0 R' I6 j; y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; u& n. y( k6 Q4 V+ h" W$ L2 K+ @1 ]* h: \( K4 y# g& Q
' [" v4 L' F+ S6 A6 O6 c) q" G
import swarm.objectbase.SwarmImpl;
3 H" u1 l6 |% F( limport swarm.objectbase.Swarm;5 d7 R* Z- t4 Q% \
import swarm.activity.ScheduleImpl;; S  Z* z# c1 q- `3 z
import swarm.activity.Activity;- L! y! ?7 O1 ~3 t4 C( C
import swarm.activity.ActionGroupImpl;
1 B$ h  r* W2 k+ t# Gimport swarm.collections.ListImpl;
; S  {. O/ x" ximport swarm.defobj.Zone;
! o% F2 T& ?/ V$ B# n! k5 Yimport swarm.Globals;. ]9 W1 q+ W1 ?5 A# V- R8 n$ y3 w" q
import swarm.Selector;
- \+ N. [8 a3 `import swarm.activity.ActionGroup; . u" g. Z' [) E& B- {  l
class Agent {
# Q& H  r0 ^& O) m; D5 N$ ^  I0 ~        char id;' i( e; A+ c1 f9 u* d

& f, q% I5 c5 y8 o- m. J        Agent(char id) {
6 z+ i' G1 u+ B$ F2 L0 J5 P                this.id = id;; ^! a1 C' [  ]7 z: C  u
        }
3 _; k# r) g# s: E- c# M; A1 }/ _4 g* |( Y6 Z+ ]
        public void agentStep() {
4 `: b0 p, H& I+ |! ^                System.out.println(id + ":" + Globals.env.getCurrentTime());$ p# N6 X  j9 E) S- x: f
        }. @/ G/ B0 r) C. H( v. H1 X
}
# r' i1 F$ R  `4 o: }4 ]( _  x. F" e2 s* G  K
public class ActionGroupDemo extends SwarmImpl {
8 w: j) Q& x9 W; Q! v' e4 e$ r& u        ScheduleImpl schedule;
; y" U( j/ l5 @( _# f        ActionGroupImpl actionGroup;
. K% Q3 i; M3 S7 w; J* t        ListImpl list;& y' H8 ~! C; m8 n; ^* j
        char Id = 'a';' c3 L: z% A  {3 J9 i

8 t' c7 P0 P# q+ ^2 H8 E, O2 E        ActionGroupDemo(Zone aZone) {7 T* g7 M' V9 W5 ~6 J
                super(aZone);
) p& a: r% Y, h) ?# f  R                list = new ListImpl(aZone);9 E* B6 W* M" }$ U0 T
                swarmSetp();
* F& {) |& p! {  M; X+ t: R                actionGroup = new ActionGroupImpl(aZone);
7 H( S. n, H3 E                schedule = new ScheduleImpl(aZone);: N+ @: d% N3 p  q0 k% k! u) D  d& L
                try {8 T0 `" {2 w$ @- E  k
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 f; J2 B. Z9 `  w) |                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 ]6 n5 ?8 W1 r: C3 D: P% V
                        
( O6 W  P: k7 U8 h4 Z; h                        actionGroup.createActionForEach$message(list, agentSel);" F+ ]  o( F: b* K( C
                        actionGroup.createActionTo$message(this, swarmSel);! F6 W9 U2 U: m
                        schedule.at$createAction(0, actionGroup);
- i( e6 c% l6 @9 h$ h                        schedule.at$createAction(1, actionGroup);
0 h$ C9 }! c/ o% y! R" G: G% k                        schedule.at$createAction(2, actionGroup);
# j$ Q  h8 y6 G0 E
6 c) d! z0 ~5 R! R0 ~% R                } catch (Exception e) {
" u, K8 Q2 w% C4 \. i# |5 D6 d                        e.printStackTrace(System.err);/ m% b- I  o  ?1 l. r
                        //System.out.println(e);
5 u/ L6 L$ f: O7 N9 V9 ^9 f4 P7 [                        System.exit(1);
* \- T) z( g: Q. q4 x                }# p5 V8 W& H/ F7 U  ~
4 p5 H2 s, G0 @$ M

9 K+ ~# r, g& n: e        }
, F9 ]  u2 i' U( `% n6 O
4 S: v6 b/ j! A. m4 w) W        private void swarmSetp() {+ @2 j1 c& L! C, c9 |$ R4 D
                list.addLast(new Agent(Id));
  o3 P6 `' o9 J                Id++;
9 R$ ~; A3 T- ]( g% b        }- C0 ?  T! g* g/ M3 F+ G. y
' {7 S6 S& j+ b; Y3 e
        public Activity activateIn(Swarm context) {! g7 w  G+ P8 I7 M
                super.activateIn(context);
) a1 R0 @2 H/ r- S, ]                schedule.activateIn(this);
- G/ J6 S, ]1 R; A                return getActivity();0 z- @1 b! r+ ]8 {$ c0 J
        }6 }$ E1 @( S* n+ w. ]' v! T
: \3 o! p5 Q9 f* h5 F
        public static void main(String[] args) {
# k7 O# E) [+ Q( G* I5 N0 l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 l$ V! K; G2 b6 w" G; l                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 v0 x, u5 ?% B  S1 o* D
                swarms.buildObjects();* N, z8 ~+ }; u0 B
                swarms.buildActions();' Y9 y/ K% b: s; Y* G% k, O
                swarms.activateIn(null).run();; U  E9 r$ l# B
        }9 H, i% `; R) A9 x; S3 U

* ^- @/ J! J! G1 b5 t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-23 21:54 , Processed in 0.020230 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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