设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13374|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* X5 K  g! l+ O) R7 n0 S1 s+ [( i6 p, S+ Z4 y8 x8 J0 a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ n7 F- u$ G4 f. R% q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) W8 t  X# x* w& Q: `
swarm.SignatureNotFoundException1 N1 a- }+ u4 \, G: L
        at swarm.Selector.<init>(Selector.java:76)9 z. S7 H0 `, m9 U# s" R+ C
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ r- J1 i3 ?7 B6 r        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ m' u- N/ N: k, w7 ^
, B) R9 q4 t) v* B
+ @4 N  t& Y2 d% kimport swarm.objectbase.SwarmImpl;9 X- U, P+ z4 g+ j$ y* q0 R  a" M; A, W
import swarm.objectbase.Swarm;
$ D: p9 m4 c5 t% q8 U: Dimport swarm.activity.ScheduleImpl;) U& L  Q: o$ _, q, o" ]" [
import swarm.activity.Activity;
# E0 w4 }+ Z# t- _6 l" e) `! k; [4 ?import swarm.activity.ActionGroupImpl;; l2 A  |/ V( _: A
import swarm.collections.ListImpl;
. o) ?; x# G4 N' W' Z* i! N3 Himport swarm.defobj.Zone; - x" w) E8 r+ [. N8 ~7 {8 w
import swarm.Globals;
( Y* x0 V+ D9 W; v1 Oimport swarm.Selector;
. m! D* K$ J" b! v1 e3 wimport swarm.activity.ActionGroup;   M5 h( f+ Z+ m: C
class Agent {- c9 P* U/ z5 [
        char id;9 u- ~+ u6 h( U' F6 q; o! W2 C" P
& H7 {  p1 D7 R9 R1 Q" {3 n' d
        Agent(char id) {7 z4 }: J) ?  v1 \* _
                this.id = id;$ w* ?+ {* e! h( y/ o
        }0 ^" ?3 k! ^& H/ ?% x$ d$ b, f

3 a5 t/ p3 p1 r4 v& o! y% S        public void agentStep() {
# s9 F& a) z5 i+ _1 k$ I7 u# x                System.out.println(id + ":" + Globals.env.getCurrentTime());
& L" s1 P6 A* o0 ]        }
: k* x! x. m! j9 Q6 S}
! {6 k- R! S* X1 L+ x: h! E  ]9 K2 }0 q/ h  L& J. C+ i
public class ActionGroupDemo extends SwarmImpl {
+ C1 c1 q# m9 n; H2 R1 T        ScheduleImpl schedule;
0 i/ K, {2 z2 ~1 Z; h0 b/ p- [        ActionGroupImpl actionGroup;- e8 b/ U- {& l/ P( a
        ListImpl list;
+ e/ c8 T4 F7 g: f  I" p& r        char Id = 'a';
6 |; _! `4 n1 I3 M3 u$ l5 b7 x( e+ v% k# f# H1 V
        ActionGroupDemo(Zone aZone) {
" ~  t$ R! b1 z' z6 O                super(aZone);% I7 E# F. x) X5 z
                list = new ListImpl(aZone);" L) h$ j0 |% }- q) e* k- \; F8 O
                swarmSetp();
+ X* L( Z) G) L! F5 j3 C                actionGroup = new ActionGroupImpl(aZone);; R' S( Q5 g& V1 Y2 O: n9 [; Q" \' ?! m( s
                schedule = new ScheduleImpl(aZone);3 ?& i0 h- g" B. b# x/ h$ ~
                try {
# g3 t; x+ R5 ]8 y  U; t                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) e# {) \& e0 R                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; f3 k! n' S7 D9 C0 z+ `' W% T
                        
% P0 L6 O1 g* ?  Z8 K0 K2 ]                        actionGroup.createActionForEach$message(list, agentSel);0 ]/ Y" n/ n0 E6 q
                        actionGroup.createActionTo$message(this, swarmSel);; O& `) S6 E! i6 g* g
                        schedule.at$createAction(0, actionGroup);
/ H. n4 z$ }; ^$ }2 W                        schedule.at$createAction(1, actionGroup);
# h/ ~+ X% q; @% u  {, _                        schedule.at$createAction(2, actionGroup);7 D% i) \* r0 p

2 U# @7 y5 m" l, u; @                } catch (Exception e) {) P" R- Z. ^% A0 J2 o
                        e.printStackTrace(System.err);1 T. w4 M- G8 y5 S' D+ |. V
                        //System.out.println(e);5 ?- D) p( s7 n3 C: f# _
                        System.exit(1);6 D8 c, D# U3 Z7 A" h$ @8 N& E
                }+ c8 x: S- L5 u8 ^; Q1 ?' D% E" a

) \' V9 z# S% G' @  L2 g# ~5 W* |; F! K" q
        }$ p5 W% c* B! `* l

* u" o  N1 G# b( l" w        private void swarmSetp() {
9 N' a# ~4 ~: A+ n# h" J3 k& E" w                list.addLast(new Agent(Id));
" f- v+ G& V& m. T9 k. }                Id++;) M8 P/ k8 m- N  T2 m( k# n
        }# r, G( T* K. P9 p: _8 o; f

4 ~. @9 x; G# k* X- c+ X        public Activity activateIn(Swarm context) {4 s/ y0 g2 t) |6 x# V% `; B
                super.activateIn(context);
5 V8 _% Y  O# L  d                schedule.activateIn(this);
$ [& w+ A( G. k5 V) a: D2 {                return getActivity();) `$ G4 I+ }* T1 W% ~1 f0 p" t" i
        }% X8 v; @( n6 Y% Z* U! b5 _

, i  a& L7 F6 z" D        public static void main(String[] args) {( [. y+ q( b, `8 ?) I6 `9 M4 K
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) f, o, Y9 X9 l; J- r; Y! A( P7 D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* t+ D! t- _. u! ?% L5 {. K                swarms.buildObjects();
" k# y- q0 p9 x9 v& v                swarms.buildActions();
# [: w( x5 Z1 _7 O+ `8 z; ^% M- g                swarms.activateIn(null).run();$ {4 A2 q1 S6 ?; N$ o( O
        }, F( R" j. b3 X/ R& A
" [0 I8 [( I: t2 d+ G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-5 09:49 , Processed in 0.018152 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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