设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11894|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, H1 q! S; b. a. F% |  K
6 x+ U7 H1 h4 e' g# ^- T4 _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 `- l# N, w- U6 y$ [$ S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 R- u) J- M6 r2 V
swarm.SignatureNotFoundException4 h8 {' v) P6 a
        at swarm.Selector.<init>(Selector.java:76)# A$ |3 J' k" Y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! J' D9 h- b8 ^, i6 Q/ f
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* _, Q4 t* C. o0 U$ }* V( y2 \. a$ z8 ]; Z* p0 m) m

" a( X0 F* J; y: ~) cimport swarm.objectbase.SwarmImpl;0 c3 k% H6 w7 \* j
import swarm.objectbase.Swarm;
( S( \2 a: a, ~* F, u. Mimport swarm.activity.ScheduleImpl;
7 E5 V7 p: m) d, [  J; ^import swarm.activity.Activity;/ I/ Y" j, g% K, L& [# c
import swarm.activity.ActionGroupImpl;- `+ L+ ^& ^* ?8 B9 j, G
import swarm.collections.ListImpl;
0 @  ~2 m6 m  Dimport swarm.defobj.Zone;
9 R+ v$ ?. y! |import swarm.Globals;! w5 ]) q5 K2 D9 r! A
import swarm.Selector;
" Q2 l1 u$ b3 Z7 I  i3 `. G3 Aimport swarm.activity.ActionGroup;
3 Q6 v6 W0 ]# ~. {' S; `+ }class Agent {
, z* Z- |4 |9 n$ \( g        char id;5 M) y1 ^0 ?3 G; x
# ?7 E" Q( ^1 e
        Agent(char id) {: e7 [/ {1 p8 K; [, s
                this.id = id;
! ^. N% v8 M) v" z5 r        }" W# N  q3 Q5 s, a6 Z8 ?

9 h; k1 ?* \1 _* p        public void agentStep() {
5 H3 r( o; J4 Y7 p! m( @                System.out.println(id + ":" + Globals.env.getCurrentTime());( X( t) S# [3 O% a1 d
        }7 {% x/ {7 t& Q5 g
}
; U' Z4 H  E" c  P% b0 }5 B( ^( a1 t9 E! M" Z; i0 p* Q. E
public class ActionGroupDemo extends SwarmImpl {: [$ \8 g$ q2 Z4 i$ M
        ScheduleImpl schedule;
' }% t# v; w% O+ {/ i        ActionGroupImpl actionGroup;
3 ]) W3 Q% s5 y& K/ ?( x        ListImpl list;- T! p1 \5 S' j% A7 z
        char Id = 'a';* p; \5 g+ y# S1 e1 I

# o/ x3 j8 j6 \1 k4 w        ActionGroupDemo(Zone aZone) {) z4 |  c9 x2 J) `$ B/ J
                super(aZone);% i) [+ _! [6 a) l: E
                list = new ListImpl(aZone);5 O  r1 ^; B& Q7 _4 d- M! b  u
                swarmSetp();
6 i. z7 b; ~. l" V! r, e5 }4 [0 f) c                actionGroup = new ActionGroupImpl(aZone);
& i+ O* e7 _1 x, x                schedule = new ScheduleImpl(aZone);" P# F+ A. U/ w% }3 o( [) U$ P
                try {
( y2 }: q( ~5 _% ]) T0 y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- U* ^7 D2 D( j% e5 q8 X
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! U4 N! V+ E- T/ T) s
                          b+ `" E' ]" o$ l5 [
                        actionGroup.createActionForEach$message(list, agentSel);% [/ l+ C' Y: o8 U
                        actionGroup.createActionTo$message(this, swarmSel);- V" G3 H+ k2 t, [6 }' D' k
                        schedule.at$createAction(0, actionGroup);0 b% [9 k# R% U9 @! b8 e
                        schedule.at$createAction(1, actionGroup);
5 f+ M0 b* \. Q& ^1 e. O                        schedule.at$createAction(2, actionGroup);1 o5 t: n; O6 K  x# x
2 E3 v4 T6 e8 C$ H* v
                } catch (Exception e) {
, x8 p# x# Y& H# a) b) L                        e.printStackTrace(System.err);
$ P$ u1 j6 f8 L. ?% I- ^  p, I7 g' ^" [                        //System.out.println(e);* V! E1 o  u5 g7 d, o: E5 r" F7 O
                        System.exit(1);$ b5 N& `' I& V8 o
                }' j) V$ U/ u% v$ `0 h3 W! a+ g
0 w4 M* L) t+ @" H( _

% R" f: c4 U) \: `4 ]        }  f5 |3 L% F0 d, _6 _3 a* ~/ o
/ ]8 A4 u4 w9 N, A/ \9 n3 s
        private void swarmSetp() {
. m8 I# J2 d! ?6 ]9 y& n                list.addLast(new Agent(Id));
0 l! l8 o, [$ n& S' ^9 x                Id++;3 D& H9 B/ K" {; ?& p3 [1 P
        }4 ~  m' k, M* C, U# a

. M  h0 W* B6 k( A) u$ }  s1 G        public Activity activateIn(Swarm context) {# P2 s& N, w" ?! x1 t/ `& v$ s
                super.activateIn(context);$ \$ @/ X  b( W6 Q8 x8 x* _  ?
                schedule.activateIn(this);7 A. ~, s% x4 U  N$ }& U" z& A
                return getActivity();
$ r6 ]8 o: M- i4 C! F        }
: G6 H+ ^1 o' p# l5 a# O0 Q* z' k
4 M& s% ^( P/ P* p        public static void main(String[] args) {3 U7 g# X7 Q0 W# |! e# w
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( |4 \7 N' n, L; t; v/ c- ~- h  y% {
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 m. D. D+ Q! N- V& @7 n1 f" T2 C
                swarms.buildObjects();
: ^. R) m. l4 T                swarms.buildActions();0 ^( c5 C, r1 f, q
                swarms.activateIn(null).run();
' q1 n/ x- t- v) u/ m        }' H& h% o9 ^. T% ]# \* k' {* i
5 R* y' ]% j' v/ e6 o: X
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-24 23:20 , Processed in 0.015337 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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