设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6602|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 ?/ r2 k  J& g7 U! a7 F" }
5 [# J- Y# _: i+ Y) w/ G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! f+ |$ h8 m( Q% i8 m& j7 E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ t9 v; l  p0 ~0 o/ Z* y, {swarm.SignatureNotFoundException
# \9 L8 G5 x6 x1 E4 B        at swarm.Selector.<init>(Selector.java:76)+ G4 u: Y. `+ G- t/ X2 e$ v" z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- p1 W+ w0 U" P- _5 T7 s; D. B
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 d/ _& s$ r3 k0 ^0 E  }

$ v' ?' S  k1 a: b0 W5 W0 o; k6 ]- e: {
import swarm.objectbase.SwarmImpl;
, N% u/ R% T: _8 ]* yimport swarm.objectbase.Swarm;7 b- V4 l( M1 }  `* C
import swarm.activity.ScheduleImpl;
% F5 L, C! ]8 E" e2 C; s  Zimport swarm.activity.Activity;! n+ H0 U; G) l9 I
import swarm.activity.ActionGroupImpl;1 n' v& @8 B" X* H" n9 ~* l$ n4 M
import swarm.collections.ListImpl;
( K3 ?/ |5 s5 n0 Mimport swarm.defobj.Zone;
* f% M0 X# {- Q$ l+ G% Cimport swarm.Globals;
( u/ {* v6 }7 ~' `5 U/ k! eimport swarm.Selector;) ]9 G; }8 g# W$ z
import swarm.activity.ActionGroup;
0 V( r2 w' N; e" Q# `class Agent {
: T/ e3 v6 a- M, U7 j        char id;' f5 v* q- ]  J" o1 s7 t
& J, }3 ]* F; \  r5 ]6 N
        Agent(char id) {8 Z6 g) k: K( }" Z* v& i9 m
                this.id = id;
" U& c$ V3 d: m8 w/ G% g. O        }! e4 W- v4 ~9 K

3 a) ]& g7 _! z9 i  D        public void agentStep() {& U: {# A7 e6 L/ ^  ~. w
                System.out.println(id + ":" + Globals.env.getCurrentTime());! a% s% r# b7 t) @5 g
        }
, ?$ R7 Q6 X) F' Z}
. f/ q& ^  q" i% `/ `7 ~+ }3 Z$ B1 e6 y! j# A5 X. `) R: C
public class ActionGroupDemo extends SwarmImpl {/ W" E$ E# p7 d( R5 Q% V* s$ Q9 G
        ScheduleImpl schedule;% X, ~/ V1 Q  P
        ActionGroupImpl actionGroup;
" {/ D# C; d; J" \5 ?        ListImpl list;4 e1 X- d: G! z- T! B/ h
        char Id = 'a';1 s% g3 Z0 e; h5 F
: ?, O4 j8 M. I! }! `; W
        ActionGroupDemo(Zone aZone) {
1 K( X7 N5 q2 w7 d9 ~$ j6 Q, q5 E                super(aZone);
5 P/ A1 ?: G$ o2 o% t/ Z                list = new ListImpl(aZone);
" q: F# ~; s. Z( r                swarmSetp();
1 ?3 Y6 n) ^5 A                actionGroup = new ActionGroupImpl(aZone);
: }( L* x- [6 K  r  n) A                schedule = new ScheduleImpl(aZone);( @5 U/ i1 X$ \
                try {5 ]* I; M7 Y9 V% T+ A
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 }) z: e0 L' e- y% e: p( I                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ V" T0 h8 `8 A, R2 L7 v' _5 i                        5 M: |! f: C4 a' o. d
                        actionGroup.createActionForEach$message(list, agentSel);
8 w; H1 B' C" R                        actionGroup.createActionTo$message(this, swarmSel);
1 U9 w2 h, J( n, b                        schedule.at$createAction(0, actionGroup);
+ v& ^6 y# A" @9 ?                        schedule.at$createAction(1, actionGroup);
7 l1 W! j9 C0 I4 t! a5 ^                        schedule.at$createAction(2, actionGroup);1 @' x& ?# [- s' J; v

6 P5 v5 }/ u1 m3 m+ c                } catch (Exception e) {! e9 ]" Q' L6 X* g# p2 w7 W6 W& \
                        e.printStackTrace(System.err);3 M3 }$ X! A9 r8 b( K4 X$ S
                        //System.out.println(e);9 X. A8 l# L: \: V. y: _1 O" }
                        System.exit(1);
- h' ]3 v: W$ j2 R                }# N  s& `( e6 ]2 _4 _8 E- y
: x' V4 j4 z5 p7 m7 V" k

& i4 m0 Y$ y  W/ [6 d        }: U8 S* R4 d1 T$ ^6 X4 q( l' {+ q
! Y  K9 u" f: G. S" E# w/ d7 g
        private void swarmSetp() {
5 f: v* S+ J& j& X' l, g/ o5 A                list.addLast(new Agent(Id));
1 n; I: ~8 P9 i" {  B" \3 M                Id++;% r3 ~: r# b: x
        }3 Q1 I# h% I# b

) G  V4 C! z& W. u" S0 A" ?  `1 {; u        public Activity activateIn(Swarm context) {
" n9 H% r, C. Z3 e: W  x1 \6 m: U                super.activateIn(context);
4 V7 [8 |! Q: c# ^                schedule.activateIn(this);. @* S, W( q8 A" t
                return getActivity();, y& D" U4 I, U; {$ A* Y
        }
# u, M$ d, |" t* j2 d! \+ l  s# }1 J
        public static void main(String[] args) {
' w% |6 P- N5 H, X% `) T4 H) }, A  B                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; B8 j. k& U+ a9 W- e                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( ^3 A* @2 ?. l( g. o. O                swarms.buildObjects();
" c6 C* G$ V: t- y" P# N' t                swarms.buildActions();- x8 u! X: \. ^& ?' Q
                swarms.activateIn(null).run();
; l, t2 y( @* E, S        }
  [1 [, A6 }) g3 u* ^: H7 s) Q6 L4 l3 C/ |/ t: p9 o( M
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-2 19:05 , Processed in 0.014571 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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