设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11761|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ N4 o1 t3 K! Z8 x( ?! p/ M9 N2 Y5 e9 B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, y; A( e5 ]8 y! h& ]6 R- R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; F/ b2 u9 W) W- e' w! e% L$ Wswarm.SignatureNotFoundException) G1 P; T6 @: K/ f9 r9 M, `/ b& t
        at swarm.Selector.<init>(Selector.java:76)4 [& X3 @, D/ }- n' l8 @( E* s
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( t9 v, }9 F6 i+ o0 M/ \2 Z' |        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 B" p. f6 {) m* O# x# ], `* l' U3 Q7 m7 j2 m# y
# E; L+ F& O; C  b& e8 v( V: p
import swarm.objectbase.SwarmImpl;
5 @0 u6 E/ W6 F1 Q2 _2 c3 ^6 }import swarm.objectbase.Swarm;/ ?7 i% `( ~: v- ?! E8 Z! m( [
import swarm.activity.ScheduleImpl;6 V/ I) U% q% F" S
import swarm.activity.Activity;
- R5 @6 [7 V# t6 f4 ~import swarm.activity.ActionGroupImpl;) \) h0 w  F. r4 w3 ?; _
import swarm.collections.ListImpl;
6 u6 E! W/ @0 B! fimport swarm.defobj.Zone; . ]$ |" X  t0 Z2 J/ M; U
import swarm.Globals;
; Q( g  T& a* C: p* [3 Cimport swarm.Selector;* a* B; Y* m% r" i
import swarm.activity.ActionGroup; - a" r: k' P# X6 P
class Agent {
, l% c9 d5 u" A& ^1 K1 d        char id;
! A1 G5 Y4 w! e+ g' C/ Q/ @
/ V+ I& r7 x8 i8 e7 p  \! Q        Agent(char id) {$ ^* L( u6 [" Z+ y# O
                this.id = id;
2 I. e: i  O# S6 n        }+ r' J7 i/ y# T2 Y8 F

* ?5 C4 [# a. I: z# {+ `0 r$ K# B4 d$ H        public void agentStep() {
% [  B* t' h# @: \0 {                System.out.println(id + ":" + Globals.env.getCurrentTime());
  |5 _1 {; m/ o, Q! [& G! ]7 w4 b        }$ a5 U2 f1 A% l( q" ~
}" I" W& g4 X; f0 i
" y( m3 L$ X( Q: B+ [" u! u2 F
public class ActionGroupDemo extends SwarmImpl {
3 J; F8 F# J2 s1 [1 ^, P# _        ScheduleImpl schedule;/ w% E6 N2 o4 A# C
        ActionGroupImpl actionGroup;
! f) N# \; Z3 Q% d$ m& O# c        ListImpl list;+ ^2 r3 E9 P0 C/ z
        char Id = 'a';
7 y1 R5 b# K$ d; O% G4 x: M7 M7 @
$ e) ^1 F) P1 p2 q' U1 B; A        ActionGroupDemo(Zone aZone) {
+ g5 C% n$ s+ i# ?) @8 }9 g* ~4 Y& g                super(aZone);9 y* B; Z2 @/ ^/ h+ M' F
                list = new ListImpl(aZone);
  j) X8 |. a8 B8 C5 k; b. i                swarmSetp();* @; d# r2 m% S( M3 y/ u. y
                actionGroup = new ActionGroupImpl(aZone);
1 _# s4 O  u4 C( L- Z" w2 U. E                schedule = new ScheduleImpl(aZone);/ e: Y5 N% }8 u9 P8 }$ M
                try {
& l4 t6 }7 i+ f" ^4 K0 }5 S* z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 p6 X/ @5 r* Q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( l  v" I0 C9 ~6 [                        . e4 D4 |' a0 d% g! O( r( @
                        actionGroup.createActionForEach$message(list, agentSel);
5 m' k4 _4 ^; t) N, ?                        actionGroup.createActionTo$message(this, swarmSel);" I+ E( }) b0 t* E  d6 O; w+ L6 s
                        schedule.at$createAction(0, actionGroup);) `" I, w, r- f$ b6 O# ]9 x
                        schedule.at$createAction(1, actionGroup);3 j2 p6 \5 v* t( W
                        schedule.at$createAction(2, actionGroup);2 ~( A7 ~* x" Q9 [8 Z) R

! S; V3 |, @  ~& d                } catch (Exception e) {2 M5 v: p3 [6 [3 X. I2 [6 Z% ~6 \
                        e.printStackTrace(System.err);8 z, h3 L, m; M' p7 r5 o7 X/ u
                        //System.out.println(e);8 r2 s/ p( |# \; d  b0 E9 U. a
                        System.exit(1);
/ i- Z8 R& O3 ^8 V; a' _% n- V# |                }
  {( n' a7 ~* m  n$ ]3 e+ E
+ {  f' l+ C# w, I6 ~# }/ z* R3 P  y1 G, w/ Z8 k% Y1 B7 T
        }# D9 B' C& |; T5 v. {0 I' ]2 ]3 r

% a* S" D* f9 w! \        private void swarmSetp() {" q) H+ i& ^- n' b( [' J
                list.addLast(new Agent(Id));
* ]' p5 B6 T: [5 q) ^                Id++;
2 ^. R' [6 V$ Q; l: ?, e5 \6 d        }
/ e2 n# Q+ {2 w' L4 E; K6 S- V0 p% ]6 j% k! e1 p, c3 k
        public Activity activateIn(Swarm context) {
  |# u$ p# s8 t) m                super.activateIn(context);3 e: G* @0 M% X, T, ]$ J
                schedule.activateIn(this);
/ l6 K, x3 \" J; w1 K9 S                return getActivity();
5 E6 h4 ^; U: [) l% f        }4 N" ^" m' t6 k' O$ _
  Y7 d8 h# C3 ]8 w7 W& y* ^
        public static void main(String[] args) {
, s1 u- h; z9 w* e                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( h( y1 N1 H9 Z- \$ O$ Y4 ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% p% H. M2 m" u2 [& {( ^3 U                swarms.buildObjects();- z9 Q8 |3 c9 N9 i! w) P' Q# ^0 n5 X
                swarms.buildActions();
' a  C' T  p+ ]                swarms.activateIn(null).run();+ Y0 |. L2 G9 G# ~4 j
        }
8 x; R8 v/ u0 V0 G$ ~. o* K
! p' Z% E6 D- {+ E3 w0 w}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-21 01:17 , Processed in 0.017314 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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