设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6913|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: S  v" f2 x" a) P
7 J- `8 y: ?5 D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ @6 d+ B! c* q3 L+ F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 r  v6 b& h7 eswarm.SignatureNotFoundException/ ^! N3 J! g) O$ N* @  \$ `
        at swarm.Selector.<init>(Selector.java:76)' I. E4 ^- G! E
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. J. [9 s6 D  ~) H# H2 t& L/ _        at ActionGroupDemo.main(ActionGroupDemo.java:67), o3 m1 [! _% U

2 x6 b5 |$ a  {7 X* v9 ~8 f" O; q# `4 f' s
import swarm.objectbase.SwarmImpl;
! M1 M( s& K8 V& X8 j4 j# Ximport swarm.objectbase.Swarm;0 H" G4 K8 p% W8 o4 Z* p4 \
import swarm.activity.ScheduleImpl;
) P9 |7 n5 x. u& L9 Gimport swarm.activity.Activity;
; G6 O# `9 B5 k1 i+ d2 ximport swarm.activity.ActionGroupImpl;3 A' [' {: O) [$ o1 Z9 |' z4 u8 ]
import swarm.collections.ListImpl;
1 T/ j. d2 ~/ T% @  _  q  yimport swarm.defobj.Zone; 1 d1 P- F4 j' L, ]6 e7 _
import swarm.Globals;& h# Q+ q. W3 u
import swarm.Selector;
1 _" W; E% x$ B# v2 Mimport swarm.activity.ActionGroup; - t0 j' J% k+ u7 E! m$ ]" t
class Agent {
; f4 P+ }7 k6 ?! c  \        char id;
) m! h0 l- h* U
4 e* X2 \" S2 N, i. ?3 O. E. z9 f' K        Agent(char id) {
# o) S) T0 K7 }# a: b                this.id = id;
9 u% X" A/ S; v9 K3 ^2 F1 o& j        }
0 Z( K( X4 u6 I2 e
$ u% P% O) V: O9 L* k/ T        public void agentStep() {" N* B2 h1 f" f9 m1 ?0 @2 N
                System.out.println(id + ":" + Globals.env.getCurrentTime());! |( r2 M( n- K- p
        }
5 B! v+ r, G4 D$ e3 V6 q}
; X/ G* K$ K, y- d3 Q; r) A+ W2 u6 L! m( E, t) R
public class ActionGroupDemo extends SwarmImpl {
9 x! i/ `6 C: ~, O        ScheduleImpl schedule;. w5 y( x& Y- ]. `4 s- _: v6 V
        ActionGroupImpl actionGroup;
" c$ ~2 M$ b% Y' W        ListImpl list;, h2 l8 N) `+ U) d4 t
        char Id = 'a';1 a2 L  s# t4 C% k: `  l
( [' {% F' S3 L; [4 G2 b- X1 T
        ActionGroupDemo(Zone aZone) {
/ p0 e! K1 t; n1 \                super(aZone);
/ E) A2 M- j# D5 Z- W" s* H9 I, p                list = new ListImpl(aZone);
, B% i& A3 g5 C  s' n                swarmSetp();
5 ]* ]* ]$ [9 p4 x, f- {/ K" W                actionGroup = new ActionGroupImpl(aZone);- I" w1 @" q5 J! m5 M; c
                schedule = new ScheduleImpl(aZone);5 X, H4 Y2 c  N. z* A$ b
                try {- d9 v( N) E. h/ {5 ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" w( h9 {& v. g- F$ `  j                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ E( J: r5 r/ r+ p) {0 b0 L
                        
+ R" |# L' s/ ]8 G+ k7 Y                        actionGroup.createActionForEach$message(list, agentSel);
' U3 [9 _8 m9 P( I                        actionGroup.createActionTo$message(this, swarmSel);
$ y; |2 B- g1 w% e7 J4 c- n                        schedule.at$createAction(0, actionGroup);7 J* B+ M: {9 k" [7 j8 Y% v; j
                        schedule.at$createAction(1, actionGroup);) O: S  P# M6 b
                        schedule.at$createAction(2, actionGroup);& Q. m8 _7 g1 i' _) @( U

2 B( R/ L% L& k$ w6 v0 p6 P                } catch (Exception e) {
. [% Y4 G$ t; @                        e.printStackTrace(System.err);; c0 J: h$ v! q" q
                        //System.out.println(e);
3 j9 [1 [$ N: d" u, H" ~                        System.exit(1);* _/ h3 T: W3 l0 W( {7 B5 K  z
                }
8 r' F( N( `: g0 D) r& c2 @1 S& c
' \2 c/ U5 K/ D- n5 e
; T9 t; ?5 Y% P1 n        }
$ K5 O$ b: T- V6 w1 C" k5 D0 g
        private void swarmSetp() {# l& B8 E9 Y$ B4 C) ~
                list.addLast(new Agent(Id));" B# D/ o9 W  m; X7 W
                Id++;
/ H* o# u! ~: I/ i4 d* d9 @( T  l        }6 s8 \0 ^! Q/ s0 s

& Y# \% `$ g& x        public Activity activateIn(Swarm context) {$ n# y: Z8 ?4 v
                super.activateIn(context);
% z- Y3 \* R: G6 |( {                schedule.activateIn(this);9 o! [/ b$ ]; @0 |+ L6 P
                return getActivity();1 v. A5 f7 P9 e" i8 Y
        }. w/ V" c  _# M: @% z3 s, P
4 m6 ^, ~6 q! ^
        public static void main(String[] args) {7 _& K6 u5 n. ?& h! T/ [
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: E: Q6 l+ B3 e  e  k                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 ~6 ]5 e# ?0 a
                swarms.buildObjects();
" ~, d2 @$ O! a8 `! A7 v                swarms.buildActions();
5 s/ P6 r% l& I! q$ M- k+ E4 I                swarms.activateIn(null).run();: p; }, b7 Y$ `
        }* c& m9 m" z  |9 ?, R+ w6 Q- `! ^

4 H6 ~- c+ ~8 l& K}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-13 04:46 , Processed in 0.015372 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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