设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7473|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 w2 E/ I7 ^8 P5 \, N1 A

# k& O+ ~( @9 |0 T; }: a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( N, x+ [: K# x. }- e2 W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% [8 J2 @$ @0 n) C: l, F# fswarm.SignatureNotFoundException
6 [% Z3 I. z! O6 ?; Y        at swarm.Selector.<init>(Selector.java:76)
2 f' k$ }3 z  c6 b& c) m        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 m; \+ F0 S( x6 C/ l  M+ U. N# H
        at ActionGroupDemo.main(ActionGroupDemo.java:67); b) V! A' @. S

. g  {8 R; W6 A5 @. f
1 B! a$ u0 a9 b/ Yimport swarm.objectbase.SwarmImpl;
5 A% F: g5 p0 p& M8 l6 cimport swarm.objectbase.Swarm;# h: p0 L7 f) m! T; P, D7 T4 ]/ Q- S" }
import swarm.activity.ScheduleImpl;2 c$ T2 q1 d- p+ s; \
import swarm.activity.Activity;. @7 s% A' ]+ a0 d1 [, e8 l9 Q4 @
import swarm.activity.ActionGroupImpl;$ ]+ a  [. r- {/ P" V+ Q
import swarm.collections.ListImpl;/ T1 D* X) }; R" k# }: \
import swarm.defobj.Zone;
' g- l8 V4 |$ |8 Y  \- ?/ c! qimport swarm.Globals;
3 z, L4 r1 p6 C3 F$ B, g) Oimport swarm.Selector;' E( F  y3 F2 b
import swarm.activity.ActionGroup;
! O9 N0 Y0 S" L) M! ~class Agent {+ |! O0 v$ M8 H7 P4 C) g- F
        char id;& H( f' e5 Q! t5 T- [1 c3 [' z

2 {) i6 o/ x) a        Agent(char id) {
0 e: I) q/ C# Y  F                this.id = id;
# q* i4 Y, l+ ^        }; [+ ^) K: V1 h+ k
3 {1 q+ d; H  F4 k6 S9 B6 _7 B
        public void agentStep() {
& p* l% m3 j$ D: c                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ N7 U4 R7 x* n$ g        }
, E$ b6 H! k, m}4 ~% f/ _) ?! q
3 @$ t, c7 C! V2 ]+ {# D, V4 \6 s
public class ActionGroupDemo extends SwarmImpl {2 O. K  j$ I0 b0 |
        ScheduleImpl schedule;
+ Q& e) v$ E. ~, ]6 i# P' @. U4 ~        ActionGroupImpl actionGroup;
. `" d$ p& H  B, n- d. l        ListImpl list;) W( u) _) D( K* X& R9 S
        char Id = 'a';
3 b9 @1 y# k4 e0 i; \' V  g
' I4 s) M4 q$ h' L- w) T+ r        ActionGroupDemo(Zone aZone) {; @& g3 i3 E) Z) v+ V
                super(aZone);  [  n; T* n$ f  g- g# r
                list = new ListImpl(aZone);/ |$ H# {( Z7 K! b
                swarmSetp();
% Y; E9 ^, v: O  @1 G  |                actionGroup = new ActionGroupImpl(aZone);. y) G7 e, R- `) u
                schedule = new ScheduleImpl(aZone);' S5 F: P4 O1 X& y, E6 \+ P% \
                try {
# o" L7 S7 }" N8 ?                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 R( W9 }+ r2 E* F+ ]                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 A3 a7 D) N. ^6 U! ]                        2 g6 X' y- j" X( p, L* E
                        actionGroup.createActionForEach$message(list, agentSel);! {; u, E3 O  J% f5 V4 R3 F
                        actionGroup.createActionTo$message(this, swarmSel);
8 ]) A# }, P8 E+ }- e/ j) ^) G( I1 H                        schedule.at$createAction(0, actionGroup);+ o1 @6 v$ j6 T4 p) `' n
                        schedule.at$createAction(1, actionGroup);7 k4 S* N9 m  `
                        schedule.at$createAction(2, actionGroup);
. b! e( b$ v4 k4 |, C# d. e* a# C- B& b0 P1 l
                } catch (Exception e) {
( g6 [7 ~" ]: G                        e.printStackTrace(System.err);3 M$ z( ~% v8 ], w9 t, {% q
                        //System.out.println(e);
) o1 [+ M/ n) h( H2 x) G+ I3 P( R                        System.exit(1);, }8 \" K0 T8 Y( A# v
                }" |& o0 H7 S" ~5 B. k8 k7 j. d
- G- s$ ~7 r! y& ~( A; c, ~
7 ?' Z4 G3 F4 n7 B5 @2 B3 C
        }
8 T; W5 D5 B. w6 A3 H7 o. Y7 M
4 X6 E, N* v/ {" w2 [7 Y        private void swarmSetp() {/ ^8 c0 H9 d0 N1 ^6 Z
                list.addLast(new Agent(Id));
. k+ P; N2 }. ?) C0 _                Id++;
3 W1 U( d; Y; s" R8 i4 m        }
5 E# O% E5 p1 \( _9 A
1 _8 D' d* V" z        public Activity activateIn(Swarm context) {- C/ P3 J4 @1 ~% V* h
                super.activateIn(context);+ `# o& N/ H) `$ g6 |9 |; s
                schedule.activateIn(this);* g9 U2 e2 H7 ^
                return getActivity();
  d& p5 z. k- p; c3 a6 k% ?* O. x        }
& _5 z3 Z9 t4 O, r. `1 H
7 ]+ U6 o  I' t' v. T8 Z        public static void main(String[] args) {
, l5 E, A& @( ~. f; y( x% C3 |                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. f/ y; ~, J4 ]# F6 \' i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ C" Q2 T! q  U, I) @, U
                swarms.buildObjects();5 [6 {' T4 W( B: ?( E( m
                swarms.buildActions();8 G% e( l: `- s$ z' f
                swarms.activateIn(null).run();0 h# o! H8 r: ]4 r
        }
+ n8 |/ Z( z; d8 g& A, n% d! Q. i
2 {+ j2 N  m! O+ O" f8 b}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-3 23:12 , Processed in 0.013507 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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